用两个栈,栈A作为入队,栈B作为出队。
enqueue(){
将入队数据压到A的栈顶;
}
dequeue(){
if B 为空;
if A 不为空;
弹出A数据到B中,然后弹出B的一个数据作为出队数据;
else
队列空;
else
弹出B的一个数据作为出队数据;
}
本文介绍了一种使用两个栈来实现队列的方法。通过将一个栈(栈A)用于入队操作,另一个栈(栈B)用于出队操作,可以有效地模拟队列的先进先出特性。当执行出队操作时,如果栈B为空,则将栈A的所有元素依次弹出并压入栈B,再从栈B弹出顶部元素作为出队元素。
用两个栈,栈A作为入队,栈B作为出队。
enqueue(){
将入队数据压到A的栈顶;
}
dequeue(){
if B 为空;
if A 不为空;
弹出A数据到B中,然后弹出B的一个数据作为出队数据;
else
队列空;
else
弹出B的一个数据作为出队数据;
}
258
1866

被折叠的 条评论
为什么被折叠?