【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();
    }
};
相关推荐
圣保罗的大教堂几秒前
leetcode 1391. 检查网格中是否存在有效路径 中等
leetcode
计算机安禾5 分钟前
【c++面向对象编程】第29篇:定位new(placement new):在指定内存上构造对象
开发语言·c++·算法
淞綰8 分钟前
c语言的练习-字符串的练习-寻找最长连续字符以及出现次数
c语言·数据结构·学习·算法·c语言的练习
计算机安禾10 分钟前
【c++面向对象编程】第27篇:空类的大小为什么是1?——C++对象标识的秘密
开发语言·c++·算法
信竞星球_少儿编程题库32 分钟前
2026年全国信息素养大赛算法应用主题赛 丝路新城 Python 模拟卷(三)
开发语言·python·算法
云泽80840 分钟前
笔试算法 - 滑动窗口篇(二):从异位词到最小覆盖子串的通用框架
c++·算法
qq_2965532744 分钟前
[特殊字符] 搜索插入位置:从O(n)到O(log n)的优雅进化
数据结构·算法·面试·分类·柔性数组
凯瑟琳.奥古斯特1 小时前
力扣3654:二维矩阵连续空位统计
数据结构·数据库·算法·职场和发展
basketball6161 小时前
并查集基础算法总结 C++ 实现
开发语言·c++·算法