栈OJ题 —— 栈的压入、弹出序列

发布时间:2026/8/21 9:40:10
栈OJ题 —— 栈的压入、弹出序列 目录题目链接题目说明思路分析代码实现题目链接链接: 栈的压入、弹出序列题目说明思路分析使用”指针“遍历数组popV、pushV入栈pushV[cur1],cur1,peek栈顶元素;如果栈顶元素与popV[cur2]相等,出栈cur2不相等继续入栈pushV[cur1]继续和popV[cur2]匹配。直到cur1 pushV.length如果pushV已经遍历完成栈不为空说明popV不是可能的出栈顺序如果栈为空说明全都匹配成功popV是pushV可能出栈顺序以第二个false的例子举例同时还有几个匹配的注意点栈是否有元素在和出栈顺序匹配时cur2不能越界代码实现publicclassSolution{/** * 代码中的类名、方法名、参数名已经指定请勿修改直接返回方法规定的值即可 * * * param pushV int整型一维数组 * param popV int整型一维数组 * return bool布尔型 */publicbooleanIsPopOrder(int[]pushV,int[]popV){StackIntegerstacknewStack();intcur20;for(intcur10;cur1pushV.length;cur1){stack.push(pushV[cur1]);while(!stack.isEmpty()cur2popV.lengthstack.peek()popV[cur2]){stack.pop();cur2;}}returnstack.isEmpty();}}