stack 模拟 queue

来源:互联网 发布:alias软件安装 编辑:程序博客网 时间:2024/06/05 19:03
class Queue {public:    stack<int>A;    stack<int>B;    // Push element x to the back of queue.    void push(int x) {        A.push(x);    }    // Removes the element from in front of queue.    void pop(void) {        while(B.size()){            B.pop();        }        while(A.size()){            B.push(A.top());            A.pop();        }        B.pop();        while(B.size()){            A.push(B.top());            B.pop();        }    }    // Get the front element.    int peek(void) {        while(B.size()){            B.pop();        }        while(A.size()){            B.push(A.top());            A.pop();        }        int t=B.top();        while(B.size()){            A.push(B.top());            B.pop();        }        return t;    }    // Return whether the queue is empty.    bool empty(void) {        return A.size()==0;            }};

0 0
原创粉丝点击