用两个队列实现一个栈

#include<iostream>
#include<queue>
using namespace std;
class Solution
{
public:
    void push(int node) {
        q1.push(node);
    }

    int pop() {
        int res;
        if (!q1.empty()){
            while (q1.size() > 1){
                q2.push(q1.front());
                q1.pop();
            }
            res = q1.front();
            q1.pop();
        }
        else{
            while (q2.size()>1)
            {
                q1.push(q2.front());
                q2.pop();
            }
            res = q2.front();
            q2.pop();
        }

        return res;
            
    }

private:
    queue<int> q1;
    queue<int> q2;
};
原文地址:https://www.cnblogs.com/inception6-lxc/p/9004775.html