Queue

队列

线性结构入门时间 enqueue / dequeue O(1)空间 O(n)

先进先出(FIFO)。一端入队、另一端出队,像排队。

动画

出
A
入

队列(FIFO):enqueue A

1 / 5

  • 当前

讲解

BFS、任务调度、滑动窗口的单调队列、生产者-消费者缓冲。

  1. 01enqueue / offer 从队尾加入。
  2. 02dequeue / poll 从队头取出。
  3. 03环形数组可避免每次出队搬移。
  4. 04双端队列 Deque 两端都能进出。

易错点

  • 用数组从头部 splice 是 O(n),应使用环形缓冲或链表。
  • 空队列出队前要检查。

代码

const q = [];
q.push(class="text-ok">"A"); q.push(class="text-ok">"B"); q.push(class="text-ok">"C");
const first = q.shift();  // A
q.push(class="text-ok">"D");

相关课题