剑指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;
    }
}
相关推荐
艾莉丝努力练剑2 分钟前
【优选算法必刷100题:专题五】(位运算算法)第033~38题:判断字符是否唯一、丢失的数字、两整数之和、只出现一次的数字 II、消失的两个数字
java·大数据·运维·c++·人工智能·算法·位运算
光羽隹衡2 分钟前
机器学习——DBSCAN算法
人工智能·算法·机器学习
vyuvyucd2 分钟前
Java数组与Arrays类实战指南
数据结构·算法
csuzhucong2 分钟前
七彩鹦鹉螺魔方
算法
逝川长叹3 分钟前
利用 SSI-COV 算法自动识别线状结构在环境振动下的模态参数研究(Matlab代码实现)
前端·算法·支持向量机·matlab
山上三树3 分钟前
详细介绍 C 语言中的匿名结构体
c语言·开发语言·算法
大猫和小黄3 分钟前
Java开发过程中的各种ID生成策略
java·开发语言·id
EXtreme354 分钟前
【数据结构】彻底搞懂二叉树:四种遍历逻辑、经典OJ题与递归性能全解析
c语言·数据结构·算法·二叉树·递归
炽烈小老头4 分钟前
【每天学习一点算法 2026/01/09】3的幂
学习·算法
繁依Fanyi5 分钟前
从初识到实战 | OpenTeleDB 安装迁移使用指南
开发语言·数据库·python