![94d09e84523e92838ecc6da408fa905b.png](https://i-blog.csdnimg.cn/blog_migrate/4625b8bd65cd5352dc191ea24da4bfa0.jpeg)
栈的特点是后进先出,队列的特点是先进先出。使用两个栈模拟队列,实现队列的push,pop,top,empty 操作。
假设一个场景,使用两个网球桶s1,s2 模拟栈,网球模拟栈中的内容。首先将三个网球 A,B,C依次放入s1中,此时s1中最底下的网球是A,上面依次是B和C。要想拿出s1中最下面的网球A,模拟队列先进先出的特征,只需要将两个网球桶口对口,将s1中的网球倒入s2,此时,s2中最上面的网球便是A,直接倒出即可。
push 操作
void
pop 操作
int
top 操作
top 操作和pop 操作相同,只是栈顶元素不出栈而已。
int
empty 操作
两个栈中均为元素,则模拟的队列为空。
bool
整体实现
class