Queue
队列
线性结构入门时间 enqueue / dequeue O(1)空间 O(n)
先进先出(FIFO)。一端入队、另一端出队,像排队。
动画
出
A
入队列(FIFO):enqueue A
1 / 5
- 当前
讲解
BFS、任务调度、滑动窗口的单调队列、生产者-消费者缓冲。
- 01enqueue / offer 从队尾加入。
- 02dequeue / poll 从队头取出。
- 03环形数组可避免每次出队搬移。
- 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");