剑指Offer、栈的压入、弹出序列

Problem: 946. 验证栈序列

入栈数组入栈,遇到弹出栈相同元素时弹出,最后判断栈是否为空。特判条件记得特判

Code

Java 复制代码
class Solution {
    public boolean validateStackSequences(int[] pushed, int[] popped) {
        if(pushed.length==0&&pushed.length==popped.length)return true;
        if(pushed.length!=popped.length)return false;
        Stack<Integer>stack=new Stack<>();
        for(int i=0,j=0;i<popped.length;i++)
        {
            while((stack.isEmpty()||popped[i]!=stack.peek())&&j<popped.length)
            {
                stack.push(pushed[j]);
                j++;
            }
            if(stack.peek()==popped[i])stack.pop();

        }
        if(!stack.isEmpty())return false;
        else return true;
    }
}
相关推荐
課代表几秒前
从初等数学到高等数学
算法·微积分·函数·极限·导数·积分·方程
ullio4 分钟前
arc206d - LIS ∩ LDS
算法
小鸡脚来咯15 分钟前
python虚拟环境
开发语言·python
龘龍龙24 分钟前
Python基础(九)
android·开发语言·python
电摇小人27 分钟前
我的“C++之旅”(博客之星主题作文)
java·开发语言
资生算法程序员_畅想家_剑魔28 分钟前
Java常见技术分享-23-多线程安全-总结
java·开发语言
等等小何28 分钟前
leetcode1593拆分字符串使唯一子字符串数目最大
算法
ytttr87335 分钟前
MATLAB中CVX凸优化工具箱的使用指南
开发语言·matlab
量子炒饭大师39 分钟前
Cyber骇客神经塔尖协议 ——【初阶数据结构与算法】堆
c语言·数据结构·c++·二叉树·github·
萧曵 丶1 小时前
ArrayList 和 HashMap 自动扩容机制详解
java·开发语言·面试