• Lc20_有效的括号


    //给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。 
    //
    // 有效字符串需满足: 
    //
    // 
    // 左括号必须用相同类型的右括号闭合。 
    // 左括号必须以正确的顺序闭合。 
    // 
    //
    // 注意空字符串可被认为是有效字符串。 
    //
    // 示例 1: 
    //
    // 输入: "()"
    //输出: true
    // 
    //
    // 示例 2: 
    //
    // 输入: "()[]{}"
    //输出: true
    // 
    //
    // 示例 3: 
    //
    // 输入: "(]"
    //输出: false
    // 
    //
    // 示例 4: 
    //
    // 输入: "([)]"
    //输出: false
    // 
    //
    // 示例 5: 
    //
    // 输入: "{[]}"
    //输出: true 
    // Related Topics 栈 字符串
    
    package leetcode.editor.cn;
    
    import java.util.Stack;
    
    //Java:有效的括号
    public class P20ValidParentheses {
        public static void main(String[] args) {
            Solution solution = new P20ValidParentheses().new Solution();
            // TO TEST
            String s = "()";
            System.out.println(solution.isValid(s));
    
        }
    
        //leetcode submit region begin(Prohibit modification and deletion)
        class Solution {
            public boolean isValid(String s) {
                if (s == null) {
                    return true;
                }
    
                if (s.length() % 2 != 0) {
                    return false;
                }
    
                if (s.isEmpty()) {
                    return true;
                }
                Stack<Character> stack = new Stack<Character>();
                for (char c : s.toCharArray()) {
                    if (c == '(')
                        stack.push(')');
                    else if (c == '{')
                        stack.push('}');
                    else if (c == '[')
                        stack.push(']');
                    else if (stack.empty() || c != stack.pop())
                        return false;
                }
                if (stack.empty()) {
                    return true;
                }
                return false;
            }
        }
    //leetcode submit region end(Prohibit modification and deletion)
    
        }
    
    
  • 相关阅读:
    数值的整数次方
    Grid Sorting
    第K小的数
    图形学变换矩阵的分解
    神经网络理论简介(三)
    神经网络理论简介(二)
    神经网络理论简介(一)
    C/C++的内存对齐
    strcpy的实现
    C++对象模型简析
  • 原文地址:https://www.cnblogs.com/xiaoshahai/p/13331232.html
Copyright © 2020-2023  润新知