leetcode之前有一道题目,是用栈实现队列Queue的各种操作。现在换了过来,是用队列Queue实现栈的操作。栈有四种操作:push,pop,top,empty。
这两类问题都是最经典的题目,可以背诵下来。
C++实现代码:
class Stack {
public:
queue<int> que;
// Push element x onto stack.
void push(int x) {
que.push(x);
for(int i=0;i<que.size()-1;i++){
que.push(que.front());
pop();
}
}
// Removes the element on top of the stack.
void pop() {
que.pop();
}
// Get the top element.
int top() {
return que.front();
}
// Return whether the stack is empty.
bool empty() {
return que.empty();
}
};