leetcode 225. 用队列实现栈

news2024/10/6 14:25:33

2023.6.19

        这题使用队列来实现栈的功能,和栈实现队列稍有不同。pop操作的实现 需要将队列1的除队尾元素之外的所有元素移到队列2中,然后返回并移除队列1剩下的元素。

        下面上代码:

class MyStack {
    queue<int> que1;
    queue<int> que2;
public:
    MyStack() {}
    
    void push(int x) {
        que1.push(x);
    }
    
    int pop() {
        int size = que1.size()-1;
        while(size)
        {
            que2.push(que1.front());
            que1.pop();
            size--;
        }
        int result = que1.front();
        que1.pop();
        que1 = que2;
        while(!que2.empty()) que2.pop();
        return result;
    }
    
    int top() {
        // int size = que1.size()-1;
        // while(size)
        // {
        //     que2.push(que1.front());
        //     que1.pop();
        //     size--;
        // }
        // int result = que1.front();
        // que2.push(que1.front());
        // que1 = que2;
        // while(!que2.empty()) que2.pop();
        // return result;
        return que1.back();
    }
    
    bool empty() {
        return que1.empty();
    }
};

         ps:实现top操作时,可以直接使用队列的内置方法back直接查看队尾的元素。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/661749.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

How to Write and Publish a Scientific Paper-Approaching a Writing Project

contents Approaching a Writing ProjectESTABLISHING THE MINDSETPREPARING TO WRITEDOING THE WRITINGREVISING YOUR WORK Approaching a Writing Project ESTABLISHING THE MINDSET 也许最基本的是&#xff0c;请记住你的写作目的是为了传达信息&#xff0c;而不是为了给人…

Flutter悬浮UI的设计Overlay组件

文章目录 APP开发经常要遇到的开发场景Overlay 的介绍Overlay的使用规则举例说明源码例子报错报错No Overlay widget found报错原因解决方法 修改后的源码 例子效果 APP开发经常要遇到的开发场景 有时候我们在开发APP的时候会遇到下面这些需求&#xff1a; 在现有页面上添加浮…

选择题UI

选择题UI QuestionInfoSetting.cs using System; using System.Collections.Generic; using System.Threading.Tasks; using TMPro; using UnityEngine; using UnityEngine.UI;public class QuestionInfoSetting : MonoBehaviour {[Header("选项")]public GameObj…

LabVIEW错误-1073807360发生于 VISA Configure Serial Port (Instr).vi

调试上位机发生错误&#xff0c;错误信息为&#xff1a;“错误-1073807360发生于 VISA Configure Serial Port (Instr).vi->300W.vi中的属性节点&#xff08;arg 1&#xff09;” 查阅资料后得出的出错原因大致分为两种&#xff1a; 1.在运行程序时&#xff0c;没有选择端…

华为OD机试之MELON的难题(Java源码)

MELON的难题 题目描述 MELON有一堆精美的雨花石(数量为n&#xff0c;重量各异)&#xff0c;准备送给S和W。MELON希望送给俩人的雨花石重量一致&#xff0c;请你设计一个程序&#xff0c;帮MELON确认是否能将雨花石平均分配。 输入描述 第1行输入为雨花石个数: n&#xff0c;0&…

SN74LVC2T45使用说明

DIR高电平&#xff0c;允许从A传输到B&#xff0c;而低电平则允许从B传输到A。 针脚A和DIR以VCCA为基准&#xff0c;针脚B以VCCB为基准

PACS影像系统源码:三维后处理解决方案

一、三维后处理功能是临床数字技术中的重要组成部分&#xff0c;在与PACS系统整合后,能帮助医院构建完整的影像管理及三维影像后处理平台&#xff0c;实现在任意PACS终端进行三维影像后处理工作。 二、三维后处理解决方案是指对三维医学影像数据进行加工处理&#xff0c;以提取…

【C/C++套接字编程】UDP通信实验

目录 一、实验目的&#xff1a; 二、实验内容简要描述 三、实验步骤与结果分析 四、结论 系列博客 【C/C套接字编程】套接字的基本概念与基础语法_Mr_Fmnwon的博客-CSDN博客 【C/C套接字编程】TCP协议通信的简单实现_Mr_Fmnwon的博客-CSDN博客 【C/C套接字编程】UDP协议通信…

Springboot实现接口传输加解密

前言 先给大家看下效果&#xff0c;原本我们的请求是这样子的 加密后的数据传输是这样子的 加解密步骤&#xff1a; 1.前端请求前进行加密&#xff0c;然后发送到后端 2.后端收到请求后解密 3.后端返回数据前进行加密 4.前端拿到加密串后&#xff0c;解密数据 加解密算法&…

新增一个全局处理异常

要在Java应用程序中理新增一个全局处理异常&#xff0c;通常需要执行以下三个步骤&#xff1a; 1.定义全局异常处理器&#xff08;Global Exception Handler&#xff09;&#xff1a; 创建一个类&#xff0c;实现ExceptionHandler接口或使用ControllerAdvice注解&#xff0c;用…

同步模式之保护性暂停

目录 定义 基本实现 带超时版 GuardedObject 多任务版 GuardedObject 总结 定义 即 Guarded Suspension&#xff0c;用在一个线程等待另一个线程的执行结果 要点 有一个结果需要从一个线程传递到另一个线程&#xff0c;让他们关联同一个 GuardedObject如果有结果不断从一…

SpringBoot 实现定时任务动态管理,太爽了

SpringBoot的定时任务的加强工具&#xff0c;实现对SpringBoot原生的定时任务进行动态管理,完全兼容原生Scheduled注解,无需对原本的定时任务进行修改。 快速使用 具体的功能已经封装成SpringBoot-starter即插即用&#xff1a; <dependency><groupId>com.github…

(CVPR-2017)用于目标检测的特征金字塔网络

用于目标检测的特征金字塔网络 论文题目&#xff1a;Feature Pyramid Networks for Object Detection 论文是FAIR发表在CVPR 2017的工作 paper地址 Abstract 特征金字塔是识别系统中用于检测不同尺度对象的基本组件。但最近的深度学习对象检测器避免了金字塔表示&#xff0c;部…

GPT提示词系统学习-第一课-你竟然想不到一个3位数乘法GPT会算错的原因

开篇 在我这个系统的开篇“GPT使我变成超人”中说过,什么样的人使用AI才是起到决定作用的。AI只是工具,它不是万能。使用的人决定了AI可以带什么样的效果。一个很强的人当使用GPT时会形成1+1>2的效果。 因此,提示词的系统化学习是非常重要。这一门课是任何目前国内市面…

使用omp并行技术实现矩阵乘法

矩阵乘法&#xff1a; OpenMP基本概念 OpenMP是一种用于共享内存并行系统的多线程程序设计方案&#xff0c;支持的编程语言包括C、C和Fortran。OpenMP提供了对并行算法的高层抽象描述&#xff0c;特别适合在多核CPU机器上的并行程序设计。编译器根据程序中添加的pragma指令&…

Unity基础 视频组件VideoPlayer,视频的播放与控制

在Unity中&#xff0c;视频播放功能具有广泛的应用&#xff0c;以下是一些视频播放在Unity中的常见用途&#xff1a; 游戏引入和过场动画&#xff1a;使用视频播放可以在游戏开始或过场动画中添加引人注目的视频&#xff0c;为游戏制造氛围和引起玩家的兴趣。这种方式可以通过播…

【运维知识进阶篇】zabbix5.0稳定版详解2(自定义监控+报警+图形+模板)

zabbix内容很多&#xff0c;这篇文章继续给大家介绍&#xff0c;zabbix功能很强大&#xff0c;只要是能获取到的数据都可以监控&#xff0c;俗称万物可监控&#xff0c;这也就决定了zabbix有很大的自由度&#xff0c;本篇文章包括自定义监控&#xff0c;自定义报警&#xff0c;…

分类预测 | MATLAB实现PSO-DBN粒子群优化深度置信网络多输入分类预测

分类预测 | MATLAB实现PSO-DBN粒子群优化深度置信网络多输入分类预测 目录 分类预测 | MATLAB实现PSO-DBN粒子群优化深度置信网络多输入分类预测效果一览基本介绍模型描述程序设计参考资料效果一览

LC-1262. 可被三整除的最大和(状态机DP)

1262. 可被三整除的最大和 难度中等229 给你一个整数数组 nums&#xff0c;请你找出并返回能被三整除的元素最大和。 示例 1&#xff1a; 输入&#xff1a;nums [3,6,5,1,8] 输出&#xff1a;18 解释&#xff1a;选出数字 3, 6, 1 和 8&#xff0c;它们的和是 18&#xff…

图的操作算法详解

一.图 基础概念&#xff1a; 有向图 - 图中每个边都有一个方向&#xff0c;例如社交媒体网站上的关注关系图就是有向图。无向图 - 图中每个边都没有方向&#xff0c;例如朋友之间的相互认识关系图可以是无向图。简单图 - 没有自环和重复边的无向图或有向图&#xff0c;例如一…