用两个栈实现队列

来源:互联网 发布:强制删除软件下载 编辑:程序博客网 时间:2024/06/13 13:31

题目描述
用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。

使用C/C++实现,代码如下:

class Solution{public:    void push(int node) {        stack1.push(node);          return;    }    int pop() {        int n = 0;        if (stack2.empty())        {           while (!stack1.empty())            {                stack2.push(stack1.top());                stack1.pop();            }         }                if (!stack2.empty())        {            n = stack2.top();            stack2.pop();        }        return n;    }private:    stack<int> stack1;    stack<int> stack2;};
0 0