【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();
    }
};
相关推荐
敲代码的苦132 分钟前
头歌 数据结构—消防资源调度
数据结构·算法
布莱克6059 分钟前
C++ 中 set 与 map 的区别详解
开发语言·c++·算法·哈希
lisw0516 分钟前
算法与软件的本质区别
驱动开发·算法·数学建模
我不会插花弄玉18 分钟前
5.Hash 【由浅入深-redis】
redis·算法·哈希算法
Nuanyt22 分钟前
LeetCode Hot 100 · 双指针 3 题 Java
java·笔记·算法·leetcode·双指针
志起计算机编程1 小时前
Clickhouse的几个关键优势
算法
重生之小比特1 小时前
【算法拾光 7】双指针|两数之和 II - 输入有序数组 + 三数之和
算法
文丑颜不良啊2 小时前
LeetCode851~875题目解析
java·leetcode
Navigator_Z2 小时前
LeetCode //C - 1304. Find N Unique Integers Sum up to Zero
c语言·算法·leetcode