【leetcode】用栈实现队列

题目链接:232. 用栈实现队列 - 力扣(LeetCode)

栈虽是先进后出,用一个栈可以将序列倒序,那么再用一个栈就可以正序了

先用一个栈存储进来的,要输出的时候再用一个栈装一下

复制代码
class MyQueue {
public:
    stack<int> in;
    stack<int> out;

    void inToOut() {
        while (!in.empty()) {
            out.push(in.top());
            in.pop();
        }
    }

    MyQueue() {

    }

    void push(int x) {
        in.push(x);
    }

    int pop() {
        int top = peek();
        out.pop();
        return top;
    }

    int peek() {
        if (out.empty())
            inToOut();
        return out.top();
    }

    bool empty() {
        return in.empty() && out.empty();
    }
};
相关推荐
Darkwanderor7 小时前
什么数据量适合用什么算法
c++·算法
zc.ovo7 小时前
河北师范大学2026校赛题解(A,E,I)
c++·算法
py有趣7 小时前
力扣热门100题之环形链表
算法·leetcode·链表
py有趣7 小时前
力扣热门100题之回文链表
算法·leetcode·链表
月落归舟9 小时前
帮你从算法的角度来认识二叉树---(二)
算法·二叉树
SilentSlot10 小时前
【数据结构】Hash
数据结构·算法·哈希算法
样例过了就是过了11 小时前
LeetCode热题100 柱状图中最大的矩形
数据结构·c++·算法·leetcode
wsoz11 小时前
Leetcode哈希-day1
算法·leetcode·哈希算法
阿Y加油吧11 小时前
LeetCode 二叉搜索树双神题通关!有序数组转平衡 BST + 验证 BST,小白递归一把梭
java·算法·leetcode