【2022初春】【LeetCode】20. 有效的括号

阅读 54

2022-01-28

思路正确,注意map的多个初始化

class Solution {
    public boolean isValid(String s) {
        Stack<Character> stack = new Stack<>();
        Map<Character,Character> map = new HashMap<>(){{
            put('{','}');
            put('(',')');
            put('[',']');
            }};
        for(int i=0; i<s.length(); i++){
            if(s.charAt(i)=='('||s.charAt(i)=='{'||s.charAt(i)=='['){
                stack.push(s.charAt(i));
            }else {
                if(stack.isEmpty()||s.charAt(i)!=map.get(stack.peek())) return false;
                else stack.pop();
            }
        }
        if(stack.isEmpty()) return true;
        else return false;
    }
}

精彩评论(0)

0 0 举报