当前位置: 首页 > news >正文

232. 用栈实现队列

一:题目:

请你仅使用两个栈实现先入先出队列。队列应当支持一般队列支持的所有操作(pushpoppeekempty):

实现 MyQueue 类:

  • void push(int x) 将元素 x 推到队列的末尾
  • int pop() 从队列的开头移除并返回元素
  • int peek() 返回队列开头的元素
  • boolean empty() 如果队列为空,返回 true ;否则,返回 false

说明:

  • 你 只能 使用标准的栈操作 —— 也就是只有 push to toppeek/pop from topsize, 和 is empty 操作是合法的。
  • 你所使用的语言也许不支持栈。你可以使用 list 或者 deque(双端队列)来模拟一个栈,只要是标准的栈操作即可。

二:代码:

class MyQueue {
public:stack<int> st1;stack<int> st2;MyQueue() {}void push(int x) {st1.push(x);}int pop() {if(st2.empty()){while(!st1.empty()){st2.push(st1.top());st1.pop();}   }int result=st2.top();st2.pop();return result;}int peek() {int m=this->pop();st2.push(m);return m;}bool empty() {return st1.empty()&&st2.empty();}
};

三:结果:

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • WKWebView加载项目中网页的资源图片路径异常
  • Django | 从中间件的角度来认识Django发送邮件功能
  • 基于windows10的WSL详细安装与使用教程
  • nginx部署vue前端打包项目
  • 上位机图像处理和嵌入式模块部署(linux Qt程序的编译)
  • 艺术与科技的结合:推荐7款好用的AI绘图工具
  • Matplotlib 简介:Python 数据可视化的强大工具
  • 第八季完美童模全球偶像明星【Forrest lin】荣耀加冕 见证星芒风采!
  • 帆软报表,达梦数据库驱动上传失败
  • HCIA云计算实验-2-网络基础实验
  • Springboot 图片
  • vue3之仪表盘
  • 堆排序的插入和删除
  • 一文读懂推荐系统
  • vue3使用elementui-plus时使用深度选择器穿透影响原样式
  • [deviceone开发]-do_Webview的基本示例
  • 《Java编程思想》读书笔记-对象导论
  • CSS相对定位
  • DOM的那些事
  • ERLANG 网工修炼笔记 ---- UDP
  • es的写入过程
  • input实现文字超出省略号功能
  • Java反射-动态类加载和重新加载
  • k8s 面向应用开发者的基础命令
  • Linux学习笔记6-使用fdisk进行磁盘管理
  • Perseus-BERT——业内性能极致优化的BERT训练方案
  • supervisor 永不挂掉的进程 安装以及使用
  • vue的全局变量和全局拦截请求器
  • 对话 CTO〡听神策数据 CTO 曹犟描绘数据分析行业的无限可能
  • 算法系列——算法入门之递归分而治之思想的实现
  • 听说你叫Java(二)–Servlet请求
  • 一个JAVA程序员成长之路分享
  • - 转 Ext2.0 form使用实例
  • 【云吞铺子】性能抖动剖析(二)
  • 移动端高清、多屏适配方案
  • #进阶:轻量级ORM框架Dapper的使用教程与原理详解
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (10)Linux冯诺依曼结构操作系统的再次理解
  • (ibm)Java 语言的 XPath API
  • (LeetCode) T14. Longest Common Prefix
  • (ZT)北大教授朱青生给学生的一封信:大学,更是一个科学的保证
  • (二)十分简易快速 自己训练样本 opencv级联lbp分类器 车牌识别
  • (二十九)STL map容器(映射)与STL pair容器(值对)
  • (附源码)springboot课程在线考试系统 毕业设计 655127
  • (接口自动化)Python3操作MySQL数据库
  • (顺序)容器的好伴侣 --- 容器适配器
  • (四)软件性能测试
  • (一)使用Mybatis实现在student数据库中插入一个学生信息
  • (杂交版)植物大战僵尸
  • (转)eclipse内存溢出设置 -Xms212m -Xmx804m -XX:PermSize=250M -XX:MaxPermSize=356m
  • (转)EXC_BREAKPOINT僵尸错误
  • (转载)深入super,看Python如何解决钻石继承难题
  • .CSS-hover 的解释
  • .Net Core 中间件验签