题解 | #栈的压入、弹出序列#

栈的压入、弹出序列

https://www.nowcoder.com/practice/d77d11405cc7470d82554cb392585106

import java.util.*;


public class Solution {
    /**
     * 代码中的类名、方法名、参数名已经指定,请勿修改,直接返回方法规定的值即可
     *
     * 
     * @param pushV int整型一维数组 
     * @param popV int整型一维数组 
     * @return bool布尔型
     */
    public boolean IsPopOrder (int[] pushV, int[] popV) {
        // write code here
        int n = pushV.length;//记录给一个数组的元素个数
        Stack<Integer> integer = new Stack<>();
        int j=0;
        for(int i=0;i<n;i++){//记录栈有多少元素被放入
            while(j<n&&(integer.isEmpty()||integer.peek()!=popV[i])){
			    //如果栈内已存在的元素等于n时 或者栈内是空的 或者栈顶的元素不等于出栈的数组
                integer.push(pushV[j]);//将元素放入栈内
                j++;
            }
            if(integer.peek()==popV[i]){//如果栈内的元素等于出栈数组的元素,那么就出栈
                integer.pop();
            }else{//否则就是无法出栈的
                return false;
            }
        }
        return true;
    }
}

全部评论

相关推荐

好羡慕走AI技术方向的人,实习薪资这么高😱&nbsp;人比人气死人😭
勇敢的嘟教授在考古:芯片公司挣得多多的,钱给的还不如互联网
点赞 评论 收藏
分享
05-02 15:59
长沙学院 Java
讲原则的小黄鸭不愿吃...:有时候面试眼缘确实很重要,当然,飞驰人生2中张弛说的很对:我努力了无数次,但是我知道机会只会出现在其中一两次。你把每一次笔试面试都全力以赴,总有你运气发挥到位的时候
点赞 评论 收藏
分享
996的工作制还是没能硬啃下去,快要面试怂了,取消了
牛客80700350...:很正常,不是所有人都能接受这种强度的。不叫怯战,这叫明智
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务