队列是一种线性表,按照先进先出的原则进行
单向队列:只能从头进,从尾出
$array = array('PHP', 'JAVA'); array_push($array, 'PYTHON'); //入队列 array_shift($array); //出队列
双向队列:头尾都可以进出
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();
登录后可发表评论