Leetcode 20 有效的括号

问题

分析

对于括号的问题,首先想到的就是使用栈

代码

public static boolean isValid(String s) {
        char[] chas = s.toCharArray();
        Stack<Character> stack = new Stack<>();
        for (int i = 0; i < chas.length; i++) {
            //如果是左括号
            if (chas[i] == '(' || chas[i] == '{' || chas[i] == '[') {
                stack.push(chas[i]);
            } else {
                if (stack.isEmpty()) return false;
                else {
                    Character c = stack.peek();
                    if(chas[i]==')'&&c=='(')
                    {
                        stack.pop();
                    }
                    if(chas[i]=='}'&&c=='{')
                    {
                        stack.pop();
                    }
                    if(chas[i]==']'&&c=='[')
                    {
                        stack.pop();
                    }
                }
            }
        }
        return stack.isEmpty();
    }

学习情况

1次

全部评论

相关推荐

09-29 16:59
已编辑
门头沟学院 Java
牛客96609213...:疯狂背刺,之前还明确设置截止日期,还有笔试,现在一帮人卡在复筛,他反而一边开启扩招,还给扩招的免笔试,真服了,你好歹先把复筛中的给处理了再说
投递大疆等公司10个岗位
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

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