【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();
    }
};
相关推荐
octopus_c3 小时前
STL 之 string:auto 与范围 for、常用接口、模拟实现与深浅拷贝
开发语言·c++·算法
文丑颜不良啊15 小时前
LeetCode1941~1960题目解析
java·leetcode
老师我太想进步了202618 小时前
【数据结构-4】算法美学之顺序表
数据结构·算法
风影同志7832418 小时前
编码器是激活函数吗?—— 一个看起来很像、其实不是的类比
算法
UIU11418 小时前
P1481 魔族密码
c++·算法·动态规划
文丑颜不良啊19 小时前
LeetCode1961~1980题目解析
java·leetcode
文丑颜不良啊20 小时前
LeetCode2001~2020题目解析
java·leetcode
加宝的起点雷达1 天前
40 条候选里 38 条来自同一个源,主卡整屏重样
人工智能·算法·创业
秋天的怀念_David1 天前
算法一千零一夜 · 第二十六夜 协议的母语
java·spring boot·算法