剑指offer 22 栈的压入、弹出序列
class Solution {
public:
bool IsPopOrder(vector<int> pushV,vector<int> popV) {
bool result=false;
int n1=pushV.size();
int n2=popV.size();
if(!n1||!n2)
return result;
int push_index=;
int pop_index=;
stack<int> s;
s.push(pushV[push_index++]);
while(pop_index<n2)
{
while(s.top()!=popV[pop_index]&&push_index<n1)
s.push(pushV[push_index++]);
if(s.top()==popV[pop_index])
{
s.pop();
pop_index++;
}
else
break;
}
if(pop_index==n2)
result=true;
return result;
}
};
*不可以在堆栈为空时,使用s.top()函数,会发生未知!
*要注意边界条件!!
剑指offer 22 栈的压入、弹出序列的更多相关文章
- 【剑指offer】栈的压入弹出序列,C++实现(举例)
原创文章,转载请注明出处! 本题牛客网地址 博客文章索引地址 博客文章中代码的github地址 1.题目 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为第一个序列的出栈序列.注意 ...
- 剑指offer-面试题22.栈的压入,弹出序列
题目:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第 二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等. 例如序列1.2.3.4.5是某栈的压栈序列,序列4.5.3.2.1 是该压栈 ...
- 剑指offer-面试题31-栈的压入弹出序列-栈
#include<iostream> #include<string.h> #include<algorithm> #include<cmath> #i ...
- 剑指Offer:栈的压入、弹出序列【31】
剑指Offer:栈的压入.弹出序列[31] 题目描述 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈 ...
- 剑指 Offer 31. 栈的压入、弹出序列 + 入栈顺序和出栈顺序的匹配问题
剑指 Offer 31. 栈的压入.弹出序列 Offer_31 题目详情: 解析: 这里需要使用一个栈来模仿入栈操作. package com.walegarrett.offer; /** * @Au ...
- 剑指 Offer 31. 栈的压入、弹出序列
剑指 Offer 31. 栈的压入.弹出序列 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如,序列 {1,2,3,4,5} 是某 ...
- 【剑指Offer】栈的压入、弹出队列 解题报告(Python)
[剑指Offer]栈的压入.弹出队列 解题报告(Python) 标签(空格分隔): 剑指Offer 题目地址:https://www.nowcoder.com/ta/coding-interviews ...
- 剑指offer(13)-栈的压入、弹出序列 九度1366
题目来自剑指offer系列 九度 1366:http://ac.jobdu.com/problem.php?pid=1367 题目描述: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列 ...
- Go语言实现:【剑指offer】栈的压入、弹出序列
该题目来源于牛客网<剑指offer>专题. 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5 ...
随机推荐
- Linux man 后面的数字含义及作用
Linux的man很强大,该手册分成很多section,使用man时可以指定不同的section来浏览,各个section意义如下: 1 Executable programs or shell co ...
- 实现水电气一卡通 IC卡扇区分配
现在市面上我们接触到的IC卡大部分都是分为16个扇区,分别标注为0-15区.而实现一卡通的秘密就在这16个扇区之中,一个,或者一类功能用途读取这一个扇区,除了一般默认0扇区不用外,其他扇区可以被分别加 ...
- Memcache缓存系统原理
在Web服务开发中,服务端缓存是服务实现中所常常采用的一种提高服务性能的方法.其通过记录某部分计算结果来尝试避免再次执行得到该结果所需要的复杂计算,从而提高了服务的运行效率. 除了能够提高服务的运行效 ...
- Android 为应用添加数字角标
今天在论坛上看到了一个帖子,终于搞清了我很久以来的一个困惑,android到底能不能实现ios的角标效果,QQ是怎么实现的.看了这个帖子顿时终于解除了我的困惑. 先说一个下大概的思路: 大家都知道an ...
- 8.2.5: Spring3.0新增的@DependsOn和@Lazy
@DependsOn用于强制初始化其他Bean.可以修饰Bean类或方法,使用该Annotation时可以指定一个字符串数组作为参数,每个数组元素对应于一个强制初始化的Bean. @DependsOn ...
- java代码收藏:获取HttpServletRequest中某一前缀的参数
public static Map getParametersStartingWith(ServletRequest request, String prefix) { Enumeration par ...
- Codeforces 325D
#include <cstdio> #include <algorithm> #include <cstring> #include <cstdlib> ...
- [IOS ] - INFO
Chart in ios (native) https://github.com/kevinzhow/PNChart Web Page performance - YShow https://deve ...
- LCD与ARM,具体
一 实验内容简要描写叙述 1.实验目的 学会驱动程序的编写方法,配置S3C2410的LCD驱动,以及在LCD屏上显示包含bmp和jpeg两种格式的图片 2.实验内容 (1)分析S3c2410实验箱 ...
- 微信訪问页面,莫名其妙刷新两次,火狐、谷歌、ie无问题
做微信刮刮卡活动,有个用户刮奖次数的限制,昨天一切正常,所以就修改了一些东西,今天再打开的时候刮奖次数第一次是1,第二次是3,第三次是5.感觉就是页面刷新了两遍. 检查前后台代码.发现一些bug就顺手 ...