在PHP中,可以使用數組來實現一個雙向隊列。以下是一個簡單的雙向隊列類的實現示例:
class Deque {
private $queue = array();
// 向隊列前端添加元素
public function addFront($item) {
array_unshift($this->queue, $item);
}
// 向隊列尾部添加元素
public function addRear($item) {
array_push($this->queue, $item);
}
// 從隊列前端彈出元素
public function removeFront() {
return array_shift($this->queue);
}
// 從隊列尾部彈出元素
public function removeRear() {
return array_pop($this->queue);
}
// 獲取隊列的大小
public function size() {
return count($this->queue);
}
}
使用示例:
$deque = new Deque();
$deque->addFront(1);
$deque->addRear(2);
$deque->addFront(3);
echo $deque->removeFront(); // 輸出:3
echo $deque->removeRear(); // 輸出:2
echo $deque->size(); // 輸出:1
這樣就實現了一個簡單的雙向隊列,可以向隊列的前端和尾部添加元素,并且可以從前端和尾部彈出元素。