Stack
1
2
3
4
push栈
Stack
pop栈
操作 01
入数据 (Push)
push(1, 2, 3, 4)
当需要向队列添加数据时,我们直接将数据压入 push栈。
Stack
push栈
Stack
4
3
2
1
pop栈
1
2
操作 02
出数据 (Pop)
pop() -> 1, 2
1
如果 pop栈 为空,则将 push栈 的所有数据全部导入 pop栈。
2
如果 pop栈 有数据,则直接从栈顶弹出。
Stack
5
6
push栈
Stack
4
3
pop栈
总结
核心定义
-
push栈 只入数据
所有入队操作都在此进行
-
pop栈 只出数据
所有出队操作都在此进行
通过这种方式,原本 LIFO 的栈结构成功模拟了 FIFO 的队列行为。