20. 有效的括号

简介: 20. 有效的括号

栈的应用

   public boolean isValid(String s) {
        Stack<Character> stack = new Stack<>();
        for ( int i = 0; i < s.length(); i++) {
            char c = s.charAt(i);
            if (c == '(' || c == '[' || c == '{') {
                stack.push(s.charAt(i));
            }
            else {
                if (stack.empty()) {
                    return  false;
                }
                char left = stack.pop();
                if (c == ')' && left == '(') {
                    
                } else if (c == ']' && left == '['){
                    
                } else  if (c == '}' && left == '{') {
                    
                } else {
                    return false;
                }
            }
        }// end for
        
        if (stack.empty())  {
            return  true;
        } else {
            return  false;
        }
    }
相关文章
|
6月前
22. 括号生成
22. 括号生成
46 4
|
6月前
20. 有效的括号
20. 有效的括号
35 1
|
5月前
22.括号生成
22.括号生成
|
6月前
|
C++
去括号问题(C++处理)
去括号问题(C++处理)
75 0
LeetCode:有效的括号
LeetCode:有效的括号
50 0
|
6月前
leetcode:20. 有效的括号
leetcode:20. 有效的括号
28 0
|
6月前
leetcode-22:括号生成
leetcode-22:括号生成
29 0
|
6月前
leetcode:有效的括号
leetcode:有效的括号
|
C语言 C++
20.有效的括号(LeetCode)
20.有效的括号(LeetCode)