题解 | #用两个栈实现队列#
用两个栈实现队列
https://www.nowcoder.com/practice/54275ddae22f475981afa2244dd448c6
import java.util.Stack; public class Solution { Stack<Integer> stack1 = new Stack<Integer>(); Stack<Integer> stack2 = new Stack<Integer>(); //stack1是push栈 //stack2是pop栈 private void pushToPop(){ if(stack2.empty()){ while(!stack1.empty()){ stack2.push(stack1.pop()); } } } public void push(int node) { stack1.push(node); pushToPop(); } public int pop() { //实际上要加上非空判断 pushToPop(); return stack2.pop(); } }