双向队列即头尾都能进出元素
<?php class Deque{ private $queue=array(); function addFirst($item){//头入队 return array_unshift($this->queue,$item); } function addLast($item){//尾入队 return array_push($this->queue,$item); } function removeFirst(){//头出队 return array_shift($this->queue); } function removeLast(){//尾出队 return array_pop($this->queue); } function show(){//显示 echo implode(" ",$this->queue); } function clear(){//清空 unset($this->queue); } function getFirst(){ return array_shift($this->queue); } function getLast(){ return array_pop($this->queue); } function getLength(){ return count($this->queue); } } $q=new Deque(); $q->addFirst(1); $q->addLast(5); $q->removeFirst(); $q->removeLast(); $q->addFirst(2); $q->addLast(4); $q->show();// <span style="font-family: Simsun;font-size:14px;">2 4</span>
来源:http://blog.csdn.net/nuli888/article/details/52144258