解题思路:首先搞清楚栈和队列的区别,然后一个队列便可以模拟栈,因为先进先出的关系,所以只用把前面的重新加载一次那么输出的顺序就和栈一样了
具体代码如下:
class MyStack {
public:
queue <int>a;
MyStack() {
}
void push(int x) {
a.push(x);
}
int pop() {
int size=a.size();
size--;
while(size--){
a.push(a.front());
a.pop();
}
int result=a.front();
a.pop();
return result;
}
int top() {
return a.back();
}
bool empty() {
return a.empty();
}
};
文章讲述了如何通过一个队列来模拟栈,利用队列的先进先出特性,通过反复将栈顶元素压入队列再弹出,实现了栈的push、pop和top操作,同时讨论了MyStack类的实现方法。

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



