用兩個棧實現隊列

題目描述

用兩個棧來實現一個隊列,完成隊列的Push和Pop操作。 隊列中的元素為int類型。

class Solution
{
public:
    void push(int node) {
        stack1.push(node);
    }

    int pop() {
        //若stack2為空,stack1中元素壓入stack2
        if(stack2.empty()){
            while(!stack1.empty()){
                int node=stack1.top();
                stack1.pop();
                stack2.push(node);
            }
        }
        //若stack2不為空,直接彈出
        int node=stack2.top();
        stack2.pop();
        return node;    
    }

private:
    stack<int> stack1;
    stack<int> stack2;
};
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容