/* 第一个栈中入队, 第二个栈中出队, 当第二栈为空时,才可以将第一个栈中的数据存放到其中。 */ class Solution { public: void push(int node) { stack1.push(node); } int pop() { if(stack2.empty())while(!stack1.empty())stack2.push(stack1.top()),stack1.pop(); int ans = stack2.top(); stack2.pop(); return ans; } private: stack<int> stack1; stack<int> stack2; };