import java.util.*; import java.util.Stack; public class Solution { // 用于push的栈 Stack<Integer> stack1 = new Stack<Integer>(); // 用于pop的栈 Stack<Integer> stack2 = new Stack<Integer>(); // 进队 public void push(int node) { stack1.add(node); } // 出队(重点) public int pop() { if (!stack2.isEmpty()) { // 若pop栈非空,则直接弹出pop栈 return stack2.pop(); } // 若pop栈空,则把push栈的内容依次转移到pop栈,再弹出 while (!stack1.isEmpty()) { int temp = stack1.pop(); stack2.push(temp); } return stack2.pop(); } }