leetcodepushfront implement queue using stacks:使用栈实现队列
leetcode推前使用栈实现队列。使用堆栈实现队列的以下操作:push(x) -- 将元素x推到队列的后面。pop()——从队列前面移除元素。peek() -- 获取最前面的元素。empty() -- 返回队列是否为空。
Example:
MyQueue queue = new MyQueue();
queue.push(1);
queue.push(2);
queue.peek(); // returns 1
queue.pop(); // returns 1
queue.empty(); // returns false。
笔记:您必须仅使用堆栈的标准操作——这意味着只有推到顶部、从顶部查看/弹出、大小和为空操作是有效的。根据您的语言,堆栈可能不受本机支持。您可以使用列表或双端队列来模拟堆栈,只要您仅使用堆栈的标准操作即可。您可以假设所有操作都是有效的(例如,不会在空队列上调用pop或peek操作)。
实现1: 2堆栈。
class MyQueue {
/ * Initialize your data structure here. /