21. 栈的压入、弹出序列
题目
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)
解答
栈
一开始我还搞不懂题目的意思,以为只能有一种出栈方式。其实1压栈后可以立即出栈,不需要全部压栈后在出栈。
用栈模拟就行了
class Solution {public:bool IsPopOrder(vector<int> pushV,vector<int> popV) {int n = pushV.size(), j = 0;stack<int> S;for(int i = 0; i < n; i++){S.push(pushV[i]);while(!S.empty() && S.top() == popV[j]){S.pop();j++;}}return S.empty() == true;}
};
21. 栈的压入、弹出序列相关推荐
- 【剑指offer-Java版】22栈的压入弹出序列
栈的压入弹出序列:给定两个序列,一个是压入顺序,判断另外一个是否是该压入顺序的一个弹出顺序 思路:纯粹的模拟栈的压入和弹出顺序 分别遍历压栈序列seq1和另一个序列seq2 比较当前栈顶元素和seq2 ...
- 数据结构与算法--举例分析法- 栈的压入弹出序列
举例分析 与上两篇问中画图方法一样,我们可以用举例模拟的方法思考分析复杂问题.当一眼不能看出问题的规律的时候,我们可以用几个具体的例子来模拟一下问题的过程.这样就和我们在程序出现问题时候的debug一 ...
- 剑指offer-21.栈的压入弹出序列
1.题目 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压 ...
- python 栈的压入弹出序列
| 栈的压入和弹出序列 输入两个整数序列,第一个序列表示栈的压入顺序, 请判断第二个序列是否为该栈的弹出顺序. 假设压入栈的所有数字均不相等. 例如,序列 {1,2,3,4,5} 是某栈的压栈序列,序 ...
- 剑指offer 31.栈的、压入弹出序列
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如,序列 {1,2,3,4,5} 是某栈的压栈序列,序列 {4,5,3,2,1} 是 ...
- 剑指offer(21):栈的压入、弹出序列
输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应 ...
- 剑指Offer(Java实现)栈的压入、弹出序列
题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列 1,2,3,4,5 是某栈的压入顺序,序列 4,5,3,2,1 ...
- 剑指Offer--022-栈的压入、弹出序列
链接 牛客OJ:栈的压入.弹出序列 九度OJ:http://ac.jobdu.com/problem.php?pid=1366 GitHub代码: 022-栈的压入弹出序列 CSDN题解:剑指Offe ...
- 剑指offer(21)栈的压入、弹出序列
题目描述: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该 ...
最新文章
- 《数据科学:R语言实现》——2.5 使用Excel文件
- linux 内核参数 rss,Linux控制内存的内核参数
- Centos系统搭建LAMP
- ASP.NET Redis 开发
- 通用计算机有哪四个部分,计算机硬件由哪几部分组成?各部分的作用是什么?...
- 玩转12306之系统登录
- SQL强化(二) 在Oracle 中写代码
- 河海大学计算机与信息学院 王晶晶,信息学部 计算机与信息学院
- 95-130-022-源码-source-基于socket的source源码分析SocketTextStreamFunction
- mysql 1129 错误Host is blocked because of many connection errors; unblock with 'mysqladmin flush-host
- [网络安全自学篇] 六十二.PE文件逆向之PE文件解析、PE编辑工具使用和PE结构修改(三)
- Android端测试工具有哪些,android移动app测试几款移动端测试工具分享
- 【git及GitHub使用总结】(一)
- SunlightCoin简介——SunlightCoin 人人都是矿工
- PCB layout常用走线线宽选择参考
- win10切换输入法快捷键_Win10发布四年,这30个技巧还有很多人不知道!
- 写给程序员的数理科普:混沌与三体
- PE保温管申请M1测试是根据NFP 92-507测试吗?
- 【程序源代码】见缝插针游戏
- 八骏登场 学子圆梦 一卷在手 良师益友
热门文章
- ajax中设置请求头和自定义请求头
- python作用域(scope)(三分钟读懂)
- excel多列多行堆叠成多列一行_「Excel技巧」如何利用indirect函数快速将一列转为多行多列排版...
- python执行txt中代码_【技术分享】文件解压之过 Python中的代码执行
- Find a way BFS
- 算法导论 练习10.4-5二叉树的遍历
- 保存一个 Python 对象,之后使用时直接读取
- 《深度学习笔记》——“损失函数loss乘以正数因子a是否等价于学习率lr乘以a呢?”
- Python之Numpy常用操作
- Java字符串拼接“+”需要注意的问题