20:有效括号

借助Stack,如果为{【(入栈,如果为}】)出栈,但要判断栈是否为空,以及对应字符匹配

    public boolean isValid(String s) {
        Stack<Character> ss =new Stack<>();
        for(int i=0;i<s.length();i++){
            if('('==s.charAt(i)||'{'==s.charAt(i)||'['==s.charAt(i)){
                ss.push(s.charAt(i));
            }else if(')'==s.charAt(i)){
                if(ss.isEmpty()||ss.pop()!='('){
                    return false;
                }
            }
            else if(']'==s.charAt(i)){
                if(ss.isEmpty()||ss.pop()!='['){
                    return false;
                }
            }
            else if('}'==s.charAt(i)){
                if(ss.isEmpty()||ss.pop()!='{'){
                    return false;
                }
            }
        }
        if(!ss.isEmpty())
            return false;
        return true;
    }

上一篇:将类数组转换成数组的方法


下一篇:js中执行上下文对象