php双向队列什么意思
php双向队列是指一种具有队列和栈的性质的数据结构;双向队列中的元素可以从两端弹出,其限定插入和删除操作在表的两端进行;双向队列就像是一个队列,但是你可以在任何一端添加或移除元素。
本文操作环境:Windows7系统、PHP7.1版、DELL G3电脑
php双向队列什么意思?
PHP — 用PHP实现一个双向队列
1.简介
deque,全名double-ended queue,是一种具有队列和栈的性质的数据结构。双端队列中的元素可以从两端弹出,其限定插入和删除操作在表的两端进行。双向队列(双端队列)就像是一个队列,但是你可以在任何一端添加或移除元素。
参考:http://zh.wikipedia.org/zh-cn/%E5%8F%8C%E7%AB%AF%E9%98%9F%E5%88%97
2.PHP实现代码
<?php class DoubleQueue { public $queue = array(); /**(尾部)入队 **/ public function addLast($value) { return array_push($this->queue,$value); } /**(尾部)出队**/ public function removeLast() { return array_pop($this->queue); } /**(头部)入队**/ public function addFirst($value) { return array_unshift($this->queue,$value); } /**(头部)出队**/ public function removeFirst() { return array_shift($this->queue); } /**清空队列**/ public function makeEmpty() { unset($this->queue); } /**获取列头**/ public function getFirst() { return reset($this->queue); } /** 获取列尾 **/ public function getLast() { return end($this->queue); } /** 获取长度 **/ public function getLength() { return count($this->queue); } }
推荐学习:《PHP视频教程》