题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。
解体思路
inStack用来暂存数据,outStack用来存放队列pop的数据,经过两次栈的存放顺序正好正过来。
import java.util.Stack;
public class Solution {
Stack<Integer> in = new Stack<Integer>();
Stack<Integer> out = new Stack<Integer>();
public void push(int node) {
in.push(node);
}
public int pop() throws Exception {
if(out.isEmpty())
while(!in.isEmpty())
out.push(in.pop());
if(out.isEmpty())
throw new Exception("quere is empty");
return out.pop();
}
}