php怎么实现双向队列

   2025-02-15 5390
核心提示:在PHP中,可以使用数组来实现双向队列。下面是一个示例代码:class Deque {private $deque;public function __construct() {$thi

在PHP中,可以使用数组来实现双向队列。下面是一个示例代码:

class Deque {    private $deque;    public function __construct() {        $this->deque = [];    }    public function isEmpty() {        return empty($this->deque);    }    public function pushFront($item) {        array_unshift($this->deque, $item);    }    public function pushBack($item) {        array_push($this->deque, $item);    }    public function popFront() {        if ($this->isEmpty()) {            return null;        }        return array_shift($this->deque);    }    public function popBack() {        if ($this->isEmpty()) {            return null;        }        return array_pop($this->deque);    }    public function peekFront() {        if ($this->isEmpty()) {            return null;        }        return $this->deque[0];    }    public function peekBack() {        if ($this->isEmpty()) {            return null;        }        return $this->deque[count($this->deque) - 1];    }}$deque = new Deque();$deque->pushFront(1);$deque->pushBack(2);$deque->pushBack(3);echo $deque->popFront();  // 输出: 1echo $deque->popBack();  // 输出: 3echo $deque->peekFront();  // 输出: 2echo $deque->peekBack();  // 输出: 2

在这个示例中,Deque 类表示一个双向队列。它使用一个数组 $deque 来存储队列中的元素。pushFront 方法将元素添加到队列的前端,pushBack 方法将元素添加到队列的后端。popFront 方法从队列的前端移除并返回元素,popBack 方法从队列的后端移除并返回元素。peekFront 方法返回队列的前端元素,peekBack 方法返回队列的后端元素。isEmpty 方法用于检查队列是否为空。

可以根据需要对 Deque 类进行扩展,添加其他方法或功能。

 
 
更多>同类维修知识
推荐图文
推荐维修知识
点击排行
网站首页  |  关于我们  |  联系方式  |  用户协议  |  隐私政策  |  网站留言