做wordpress 下载站,镇江网页设计公司,镇江网页,上海网站制作请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作#xff08;push、pop、peek、empty#xff09;#xff1a;
实现 MyQueue 类#xff1a;
void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头…
请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作push、pop、peek、empty
实现 MyQueue 类
void push(int x) 将元素 x 推到队列的末尾int pop() 从队列的开头移除并返回元素int peek() 返回队列开头的元素boolean empty() 如果队列为空返回 true 否则返回 false
说明
你 只能 使用标准的栈操作 —— 也就是只有 push to top, peek/pop from top, size, 和 is empty 操作是合法的。你所使用的语言也许不支持栈。你可以使用 list 或者 deque双端队列来模拟一个栈只要是标准的栈操作即可 232. 用栈实现队列 - 力扣LeetCode class MyQueue {
public:MyQueue() {}void push(int x) {in.push(x);}int pop() {if(out.empty()) in2out();int x out.top();out.pop();return x;}int peek() {if(out.empty()) in2out();return out.top();}bool empty() {return in.empty() out.empty();}
private:stackint in,out;void in2out(){while(!in.empty()) {out.push(in.top());in.pop();}}
};/*** Your MyQueue object will be instantiated and called as such:* MyQueue* obj new MyQueue();* obj-push(x);* int param_2 obj-pop();* int param_3 obj-peek();* bool param_4 obj-empty();*/