用两个栈来实现一个队列,完成队列的Push和Pop操作。

来源:互联网 发布:i see软件 编辑:程序博客网 时间:2024/06/06 07:09

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

class Solution{public:    void push(int node)     {        stack1.push(node);     }    int pop()     {        int data;        if(stack2.empty())        /*弹出来的时候,要先把Stack2中的数据全部弹出,才能往stack2里压东西,否则,次序会变*/        {            while(stack1.size() >0)            {                data = stack1.top();                stack2.push(data);                stack1.pop();            }        }        data = stack2.top();        stack2.pop();        return data;    }private:    stack<int> stack1;    stack<int> stack2;};
阅读全文
0 0
原创粉丝点击