题目

输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)

思路

用一个辅助栈来模拟这一过程。

按压入顺序压入辅助栈,每压入时检测当前弹出序列是否符合,符合的话弹出

最后检查辅助栈是否为空

class Solution {
public:bool IsPopOrder(vector<int> pushV,vector<int> popV) {if (pushV.size() == 0) return false; int length = pushV.size();stack<int> s1;int j = 0;for (int i = 0; i < length; i++){s1.push(pushV[i]);while (j < length && s1.top() == popV[j]){s1.pop();j++;}}return s1.empty();}
};

转载于:https://www.cnblogs.com/shiganquan/p/9341525.html

【剑指offer】31、栈的压入和弹出序列相关推荐

  1. 【LeetCode】剑指 Offer 31. 栈的压入、弹出序列

    [LeetCode]剑指 Offer 31. 栈的压入.弹出序列 文章目录 [LeetCode]剑指 Offer 31. 栈的压入.弹出序列 package offer;import java.uti ...

  2. 剑指Offer 31 栈的压入、弹出序列

    栈的压入.弹出序列 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2 ...

  3. 剑指offer——31.栈的压入、弹出序列(想法不错,比剑指的简单)

    题目: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈 ...

  4. 剑指offer 31. 栈的压入、弹出序列

    声明:本系列博客是对何海涛<剑指offer>的关键点总结. 1.问题描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序. 如第一个输入序列为{1 2 ...

  5. 剑指 Offer 31. 栈的压入、弹出序列【无取巧,易于理解!】

    看题解时,很多大牛用很少的代码就完成了AC,但可能看了很多遍也看不懂,因此萌生了写一种最"笨"最完整的代码的想法,这样大家可以通过我的代码入门,看懂了再去挑战大牛们的简洁解法. 输 ...

  6. 【算法】剑指 Offer 31. 栈的压入、弹出序列 【重刷】

    1.概述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如,序列 {1,2,3,4,5} 是某栈的压栈序列,序列 {4,5,3,2 ...

  7. 【LeetCode笔记】剑指 Offer 31. 栈的压入、弹出序列 (Java、栈)

    文章目录 题目描述 代码 && 思路 二刷 题目描述 打卡第三天!加油加油- 数据结构笔试题貌似也会考= =,不过考法不一样,有点规律. 总的来说还是挺有意思的,我们直接来看代码吧- ...

  8. 《剑指offer》-- 栈的压入与弹出序列、把字符串转化为整数、扑克牌顺子、孩子们的游戏(圆圈中最后剩下的数)

    一.栈的压入与弹出序列: 1.题目: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序. 假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序 ...

  9. 剑指Offer之栈的压入、弹出序列

    题目描述 输入两个整数序列,第一个序列表示栈的压入书序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相同.例如1.2.3.4.5是某栈的压入序列,序列5.4.3.2.1是该栈对应的一 ...

  10. 剑指offer:栈的压入、弹出序列

    题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压 ...

最新文章

  1. CCNA模拟器《Packet Tracer 4.11》
  2. Linux 基本网络配置 实验手册
  3. 如何写好注释,让同事赞不绝口?
  4. AtcoderGrandContest 005 F. Many Easy Problems
  5. Redis数据结构详解之Set(三)
  6. svn 与 vs2010
  7. 【Java】第一阶段练习题
  8. github注册账号一直验证失败
  9. loj#6436. 「PKUSC2018」神仙的游戏(NTT)
  10. PowerDesigner模型分类
  11. 1.6数组-像素翻转
  12. 《Python数据挖掘:概念、方法与实践》一1.3 在数据挖掘中使用哪些技术
  13. Python3中.whl文件介绍
  14. python pdf转为图片
  15. 查询手机号的归属地及运营商接口(验证可用)
  16. 深圳大学计算机与软件学院2018分数线,深圳大学录取分数线2021是多少分(附历年录取分数线)...
  17. [Vue-Treeselect Warning] Unloaded branch node detected. “loadOptions“ prop is required to load its
  18. Jace Config
  19. 解决HTML中文乱码
  20. Cocos2dx 3.1.1 之 加速传感器、监听物理按键

热门文章

  1. 麒麟MIPS:用光盘安装提示Out Of Memory,用U盘安装成功
  2. doubango编码及发送流程的疑惑
  3. configure:3855: gcc -V 5 gcc: error: unrecognized command line option '-V'
  4. 用南边代称一个公司,汝竟然也不满?
  5. 手机应用宝占用了8G
  6. python余弦定理求角_余弦定理计算文章相似度
  7. pythonos文件目录方法_python12-OS模块(文件/目录方法)
  8. 计算机怎么给课程表涂颜色,Excel做自动统计课时数的彩色课程表
  9. 家里网连github慢怎么办_果农问事台:果树拉枝后枝条梢头有上翘生长怎么办?...
  10. mysql查看autocommit_我所理解的MySQL(四)事务、隔离级别及MVCC