2020-06-22

1.题目描述

用两个栈实现一个队列。队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成
在队列尾部插入整数和在队列头部删除整数的功能。(若队列中没有元素,deleteHead 操作返回 -1 )

2.题解

一个栈用来输入,一个栈用来输出
入栈:直接入栈1即可
出栈:如果栈2为空,则将栈1所有元素放入栈2,并输出栈2栈顶元素,如果栈2不为空,直接出栈2即可

3.代码

class CQueue {public:CQueue() {}void appendTail(int value) {s1.push(value);}int deleteHead() {if (s1.empty()&&s2.empty()) return -1;if (s2.empty()){while (!s1.empty()){s2.push(s1.top());s1.pop();}}int t=s2.top();s2.pop();return t;}stack<int> s1,s2;
};/*** Your CQueue object will be instantiated and called as such:* CQueue* obj = new CQueue();* obj->appendTail(value);* int param_2 = obj->deleteHead();*/

09. 用两个栈实现队列相关推荐

  1. 《LeetCode力扣练习》剑指 Offer 09. 用两个栈实现队列 Java

    <LeetCode力扣练习>剑指 Offer 09. 用两个栈实现队列 Java 一.资源 题目: 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTail 和 de ...

  2. java 栈和队列实现迷宫代码_LeetCode每日一题--剑指 Offer 09. 用两个栈实现队列(Java)

    DailyChallenge 剑指 Offer 09. 用两个栈实现队列 Easy20200630 Description 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTai ...

  3. 【LeetCode】剑指 Offer 09. 用两个栈实现队列

    [LeetCode]剑指 Offer 09. 用两个栈实现队列 文章目录 [LeetCode]剑指 Offer 09. 用两个栈实现队列 一.双栈 总结 一.双栈 维护两个栈,第一个栈支持插入操作,第 ...

  4. 剑指offer系列-09.用两个栈设计队列

    剑指offer系列第09题.用两个栈设计队列 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead , 分别完成在队列尾部插入整数和在队列头部删除整 ...

  5. 剑指offer:面试题09. 用两个栈实现队列

    题目:用两个栈实现队列 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能.(若队列中没有 ...

  6. 面试题 03.04. 化栈为队/面试题09. 用两个栈实现队列/232. 用栈实现队列

    2020-05-08 1.题目描述 用两个栈实现一个队列 2.题解 将一个栈用来进行入操作,另一个进行出操作,入栈直接入,出栈的时候如果是空的则把另一个 栈中的所有元素移动过来,再进行出栈,否则直接出 ...

  7. Leetcode 剑指 Offer 09. 用两个栈实现队列 (每日一题 20210915)

    用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能.(若队列中没有元素,deleteHea ...

  8. 【双100%提交】剑指 Offer 09. 用两个栈实现队列

    立志用最少的代码做最高效的表达 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能.(若队 ...

  9. 剑指 Offer 09. 用两个栈实现队列(相邻相同操作只需要移动一次)

    题目 用两个栈实现一个队列.队列的声明如下,请实现它的两个函数 appendTail 和 deleteHead ,分别完成在队列尾部插入整数和在队列头部删除整数的功能.(若队列中没有元素,delete ...

最新文章

  1. 【Ubuntu 16】源码包安装Apache Httpd
  2. div实现返回符,倒三角,椭圆+小知识收集
  3. 修复版GEP宝塔内嵌版全解源码
  4. 以太坊搭建联盟链_区块链知识普及:什么是以太坊
  5. ambari安装中常见的问题
  6. golang1.1-基础环境的配置以及事项
  7. python 求当前小时前n个小时
  8. python udp 直播_Python使用UDP协议实现局域网内屏幕广播
  9. 2022年3月14日黑马程序员第二天
  10. python 百度ai 牌照识别_Python用百度AI实现文字识别功能!(银行卡,营业执照,等识别)...
  11. 定点运算之原码一位乘法
  12. eclipse导入系统签名
  13. 轻松掌握Logstash的grok匹配
  14. 非常详细的图文安装wordpress安装教程
  15. Strong-Convexity
  16. Sublime Merge中文版
  17. php网页报告2500字,教你写作文2500字
  18. 2019年4月10日
  19. win10此电脑桌面显示(桌面显示)
  20. Excel公式中的countif 和 conutifs 和sumproduct

热门文章

  1. macOS Big Sur11.2发布候选版更新:修复蓝牙和显示连接问题
  2. 本地计算机上的mysql80服务启动后停止 某些_MySQL服务启动:某些服务在未由其他服务或程序使用时将自动停止...
  3. 操作系统课设之Windows 的互斥与同步
  4. Vue第二部分(2):组件的嵌套与通信
  5. Java笔记-获取当前时间及对当前时间进行加减及时间对比
  6. Qt工作笔记-发送端发送Json格式的数据包,接收端解析数据包
  7. Qt工作笔记-对QImage的进一步认识(关于α通道)
  8. 轻松的java,轻松进行Java Portlets
  9. springboot python整合_SpringCloud 整合 Python - Flask
  10. 开发文档怎么编写_PoC 编写指南