代码随想录 Leetcode225. 用队列实现栈

发布时间:2024年01月21日

题目:


代码(首刷自解 2024年1月21日):

class MyStack {
public:
    queue<int> Q1;
    queue<int> Q2;
    MyStack() {

    }
    
    void push(int x) {
        Q1.push(x);
    }
    
    int pop() {
        int cnt = Q1.size() - 1;
        while (cnt--) {
            Q2.push(Q1.front());
            Q1.pop();
        }
        int res = Q1.front();
        Q1.pop();
        Q1 = Q2;
        while (!Q2.empty()) Q2.pop();
        return res;
    }
    
    int top() {
        int okey = this->pop();
        Q1.push(okey);
        return okey;
    }
    
    bool empty() {
        if (Q1.empty() && Q2.empty()) {
            return true;
        }else {
            return false;
        }
    }
};

? ? ? ? pop()函数的while 只能是cnt -- ,不能是--cnt,不然会报错

文章来源:https://blog.csdn.net/qq_52313711/article/details/135729952
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。