[AcWing]829. 模拟队列(C++实现)栈模板题

[AcWing]829. 模拟队列(C++实现)栈模板题,第1张

[AcWing]829. 模拟队列(C++实现)栈模板题

[AcWing]829. 模拟队列(C++实现)栈模板题
  • 1. 题目
  • 2. 读题(需要重点注意的东西)
  • 3. 解法
  • 4. 可能有帮助的前置习题
  • 5. 所用到的数据结构与算法思想
  • 6. 总结

1. 题目

2. 读题(需要重点注意的东西)

思路:用数组来实现一个队列q[N],用tt指向队尾,用hh指向队首

3. 解法

---------------------------------------------------解法---------------------------------------------------

#include
using namespace std;

const int N = 1e5+10;
int q[N],hh,tt = -1;
int main(){
    int m;
    cin >> m;
    while(m--){
        string op;
        cin >> op;
        if(op == "push"){
            int x;
            cin >> x;
            q[++tt] = x;
        }
        if(op == "pop") hh++;
        if(op == "empty"){
            if(hh <= tt) cout << "NO" << endl;
            else cout << "YES" << endl;
        }
        if(op == "query") cout << q[hh] << endl;
    }
    return 0;
}
4. 可能有帮助的前置习题 5. 所用到的数据结构与算法思想 6. 总结

队列用数组实现的模板题,推荐完全背下来。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5432330.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-11
下一篇2022-12-11

发表评论

登录后才能评论

评论列表(0条)

    保存