本功能提供下面四个方法:
push(x) ——添加元素x到队列。
pop()——从队列中删除前面的元素。
peek()——得到前面的元素。
empty()——返回队列是否为空。
网络配图
Java的解决方案
实例代码如下:
class MyQueue {
Stack<Integer> temp = new Stack<Integer>();
Stack<Integer> value = new Stack<Integer>();
public void push(int x) {
if(value.isEmpty()){
value.push(x);
}else{
while(!value.isEmpty()){
temp.push(value.pop());
}
value.push(x);
while(!temp.isEmpty()){
value.push(temp.pop());
}
}
}
public void pop() {
value.pop();
}
public int peek() {
return value.peek();
}
public boolean empty() {
return value.isEmpty();
}
}