思路:栈1用来做入队的队列,栈2用来模拟出队列。当栈2为空时,栈1出栈到栈2中,栈2再出栈,即完成出对列。
下面展示一些 内联代码片
。
import java.util.Stack;
public class Solution {
Stack<Integer> stack1 = new Stack<Integer>();
Stack<Integer> stack2 = new Stack<Integer>();
public void push(int node) {
stack1.push(node);
}
public int pop() {
if(stack2.isEmpty()){ //栈2如果为空
while(!stack1.isEmpty()){ //当栈1不为空时,出栈到2中
stack2.push(stack1.pop()); //栈2入栈栈1出的栈
}
return stack2.pop(); //栈2出栈
}
else{
return stack2.pop();
}
}
}