判断栈的压入、弹出序列
来源:互联网 发布:dior fix it colour 编辑:程序博客网 时间:2024/06/05 18:46
借助一个vector数组s
push_back 1,2,3,4,5
pop _back 4,5,3,2,1
首先1入辅助数组,此时s.back() 1≠4 2进
此时s.back() 2≠4,3进
此时s.back() 3≠4,4进
此时s.back() 4=4,4出,弹出序列向后一位,此时为5,,s里面是1,2,3
此时s.back() 3≠5,5进
此时栈顶5=5,5出 ,弹出序列向后一位,此时为3,,s里面是1,2,3
bool IsPopOrder(vector<int> pushV,vector<int> popV) { if(pushV.size()==0||pushV.size()!=popV.size()) return false; vector<int> s; int i = 0,j = 0 ; while(i < pushV.size()){ s.push_back(pushV[i++]); while(j < popV.size() && s.back() == popV[j]){ s.pop_back(); j++; } } return s.empty(); }
阅读全文
0 0
- 判断栈的压入、弹出序列
- 栈的压入、弹出序列的判断
- 判断栈的压入,弹出序列是否匹配
- 栈的压入、弹出序列(判断弹出序列是否正确)
- 根据栈的压入序列判断弹出序列是否正确(模板实现)
- 面试题22:根据栈的压入序列,判断弹出序列是否合法
- 1366栈的压入弹出序列
- 栈的压入、弹出序列
- 栈的压入、弹出序列
- 栈的压入、弹出序列
- Q22:栈的压入、弹出序列
- 栈的压入弹出序列
- 栈的压入、弹出序列
- 栈的压入弹出序列
- 栈的压入、弹出序列
- 栈的压入弹出序列
- 栈的压入、弹出序列
- 栈的压入、弹出序列
- HDU1556 Color the ball
- java实现线性表中的链式存储
- c++————学习记录(一)
- chaofn python中List添加、删除元素的几种方法
- Codeforces 1B. Spreadsheets
- 判断栈的压入、弹出序列
- C语言 求最大公约数的三种方法,利用最大公约数求最小公倍数,通过分解质因数法来验证
- Maven环境搭建及5分钟体验
- UESTC-1073-秋实大哥与线段树
- Servlet学习笔记 同时上传多个文件的方法
- 10月7日C++学习笔记
- 重载overload与重写override的区别
- 工程管理器make和调试工具gdb
- UVA