1. public:
  2. void push(int node) {
  3. stack1.push(node);
  4. }
  5. int pop() {
  6. if(stack2.empty()){
  7. while(!stack1.empty()){
  8. stack2.push(stack1.top());
  9. stack1.pop();
  10. }
  11. }
  12. int val = stack2.top();
  13. stack2.pop();
  14. return val;
  15. }
  16. private:
  17. stack<int> stack1;
  18. stack<int> stack2;

引申题

用两个队列实现一个栈。
先将a、b、c都压入queue1
需要弹出时,将a、b压入queue2,弹出c