Skip to content

Commit 4ac49a4

Browse files
committed
Queue code added
1 parent a3f5860 commit 4ac49a4

File tree

3 files changed

+63
-1
lines changed

3 files changed

+63
-1
lines changed

Data Structure/Queue/Queue.php

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
<?php
2+
/* Queue Implementation in PHP */
3+
4+
//Queue Class
5+
class Queue{
6+
private $_items = array();
7+
8+
public function enqueue($value = NULL) {
9+
array_unshift($this->_items, $value);
10+
}
11+
12+
public function dequeue() {
13+
return array_pop($this->_items);
14+
}
15+
16+
public function peek() {
17+
return end($this->_items);
18+
}
19+
20+
public function size() {
21+
return count($this->_items);
22+
}
23+
24+
public function isEmpty() {
25+
return empty($this->_items);
26+
}
27+
28+
public function printAll() {
29+
foreach ($this->_items as $item) {
30+
var_dump($item);
31+
}
32+
}
33+
}
34+
35+
?>

Data Structure/Queue/test.php

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<?php
2+
/***************** Testing the Queue ***************/
3+
include('Queue.php');
4+
5+
$queue = new Queue();
6+
$queue->enqueue(10);
7+
$queue->enqueue(15);
8+
9+
echo $queue->isEmpty() ? 'Empty' : 'Not Empty';
10+
echo PHP_EOL;
11+
12+
echo $queue->peek();
13+
echo PHP_EOL;
14+
15+
echo $queue->dequeue();
16+
echo PHP_EOL;
17+
18+
echo $queue->dequeue();
19+
echo PHP_EOL;
20+
21+
echo $queue->dequeue();
22+
echo PHP_EOL;
23+
24+
echo $queue->isEmpty() ? 'Empty' : 'Not Empty';
25+
echo PHP_EOL;
26+
27+
?>

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
- [Data Structure](./Data%20Structure/)
1010
- Linked List
1111
- [Stack](./Data%20Structure/Stack)
12-
- Queue
12+
- [Queue](./Data%20Structure/Queue)
1313
- Binary Search Tree (BST)
1414
- Heap
1515
- Hash Table

0 commit comments

Comments
 (0)