首页 > 其他分享 >代码随想录:用队列实现栈

代码随想录:用队列实现栈

时间:2024-12-10 22:55:45浏览次数:3  
标签:target 队列 代码 随想录 pop int len front push

代码随想录:用队列实现栈

class MyStack {
public:
    //pop就是拿队列的最后一个元素,只需要用另一个队列对现有队列遍历,拿到最后一个元素即可
    queue<int> target;
    MyStack() {
        
    }
    
    void push(int x) {
        target.push(x);
    }
    
    int pop() {
        int len = target.size();
        while(len>1){
            target.push(target.front());
            target.pop();
            len--;
        }
        int val = target.front();
        target.pop();
        return val;
    }
    
    int top() {
                int len = target.size();
        while(len>1){
            target.push(target.front());
            target.pop();
            len--;
        }
        int val = target.front();
        target.push(target.front());
        target.pop();
        return val;
    }
    
    bool empty() {
        return target.empty();
    }
};

/**
 * Your MyStack object will be instantiated and called as such:
 * MyStack* obj = new MyStack();
 * obj->push(x);
 * int param_2 = obj->pop();
 * int param_3 = obj->top();
 * bool param_4 = obj->empty();
 */

标签:target,队列,代码,随想录,pop,int,len,front,push
From: https://www.cnblogs.com/huigugu/p/18598169

相关文章

  • [一行代码搞定!如何快速初始化多种语言模型]
    #一行代码搞定!如何快速初始化多种语言模型##引言在开发语言模型应用时,许多场景需要允许终端用户指定希望应用所使用的模型提供商和模型版本。为了应对这种需求,我们需要编写逻辑来根据用户配置初始化不同的聊天模型。然而,通过使用`init_chat_model()`方法,我们可以轻......
  • 代码随想录day14 | leetcode 226.翻转二叉树 101. 对称二叉树 104.二叉树的最大深度 1
    226.翻转二叉树前序和后序写法都可以我用的是前序错误写法classSolution{publicTreeNodeinvertTree(TreeNoderoot){if(root==null)returnnull;swap(root.left,root.right);invertTree(root.left);invertTree(root.r......
  • 泷羽sec专题课笔记-- Windows作业--计算器 / 资源耗尽型恶意代码静态分析
    本笔记为泷羽sec《红队全栈课程》学习笔记,课程请可自行前往B站学习,课程/笔记主要涉及网络安全相关知识、系统以及工具的介绍等,请使用该课程、本笔记以及课程和笔记中提及工具的读者,遵守网络安全相关法律法规,切勿进行违法违规违纪的操作。写在最前面的话,我们为什么要学......
  • 数百名研发人员用通义灵码,33%新增代码由AI生成,信也科技研发模式焕新升级
    信也科技是中国领先的金融科技集团,力图通过大数据、人工智能等技术实现“科技,让金融更美好”的使命。信也科技拥有行业内技术实力雄厚的研发团队,其围绕信贷科技、国际化业务以及科技生态孵化三大板块,在信用风险评估、欺诈检测、大数据和人工智能等核心领域沉淀了强大的能力。作......
  • 数百名研发人员用通义灵码,33%新增代码由AI生成,信也科技研发模式焕新升级
    信也科技是中国领先的金融科技集团,力图通过大数据、人工智能等技术实现“科技,让金融更美好”的使命。信也科技拥有行业内技术实力雄厚的研发团队,其围绕信贷科技、国际化业务以及科技生态孵化三大板块,在信用风险评估、欺诈检测、大数据和人工智能等核心领域沉淀了强大的能力。作......
  • 数百名研发人员用通义灵码,33%新增代码由AI生成,信也科技研发模式焕新升级
    信也科技是中国领先的金融科技集团,力图通过大数据、人工智能等技术实现“科技,让金融更美好”的使命。信也科技拥有行业内技术实力雄厚的研发团队,其围绕信贷科技、国际化业务以及科技生态孵化三大板块,在信用风险评估、欺诈检测、大数据和人工智能等核心领域沉淀了强大的能力。作......
  • 腾讯云 AI 代码助手:AI Agent 构建企业新一代研发范式
    引言伴随OpenAI的ChatGPT4大语言模型问世,发布在人工智能领域掀起新一波的浪潮,也是从数字化转型为数智化的元年,业内对于如何将LLM落地应用进行了各种探索,尝试通过挖掘LLM构建Agent智能体进赋能自身业务、科技等领域进行加速推进创新,AIAgent智能体以其自主性、智能性......
  • 手把手教你用python一键抢12306火车票(附代码)
    源码直接在pycharm里面打开即可用github链接:w1a2b3c/123061:12306抢票脚本,学生票,为了买票纯手写gitee链接:eric/12306抢票脚本,学生票,为了买票纯手写哈喽,哈喽~,一年一度的抢火车票大战正式拉开序幕…然饿大多数人碰到的是这种情况:当你满心期待摩拳擦掌准备抢票的时候,你会发现......
  • C++天使的灵动心跳代码:类和对象(中下)
    文章目录4.拷贝构造函数4.1默认拷贝构造函数4.2显式调用拷贝构造函数5.运算符重载函数5.1赋值运算符重载函数5.1.1默认赋值运算符重载函数5.1.2显式调用赋值运算符重载函数5.2const取地址运算符重载函数希望读者们多多三连支持小编会继续更新你们的鼓励就是我......
  • 提升代码质量:如何通过静态分析和自动化测试减少Bug
    在现代软件开发中,代码质量是确保系统稳定、可维护、易扩展的基石。而减少软件中的缺陷(Bug)一直是开发团队面临的重要挑战之一。尽管手动调试和代码审查在一定程度上能够帮助识别问题,但随着项目规模和复杂度的增加,手动测试的效率和准确性往往难以满足需求。幸运的是,静态分析和自......