• leetcode-简单-栈-有效的括号


    给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。
    有效字符串需满足:

     左括号必须用相同类型的右括号闭合。
     左括号必须以正确的顺序闭合。

    注意空字符串可被认为是有效字符串。
    来源:力扣(LeetCode)
    链接:https://leetcode-cn.com/problems/valid-parentheses
    著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。
    class Solution {
        public boolean isValid(String s) {
             int len = s.length();
            if(len == 0)    return true;
    
            Stack<Character> stack = new Stack<>();
            Map<Character,Character> map = new HashMap<Character, Character>(){
                {
                    put('(',')');
                    put('[',']');
                    put('{','}');
                }
            };
            for(int i = 0; i < len; i++){
    
                if(map.containsKey(s.charAt(i))){
                    stack.push(s.charAt(i));
                }else if(!stack.empty() && map.get(stack.peek()) == s.charAt(i)){
                    stack.pop();
                }else{
                    return false;
                }
    
            }
    
            return stack.empty();
        }
    }
    

      

  • 相关阅读:
    练习44-继承和组合
    CF 1329B Dreamoon Likes Sequences
    CF 1362C Johnny and Another Rating Drop
    CF 1391D 505
    CF 1383B GameGame
    CF1360F Spy-string(暴力)
    Java 之 关键字与标识符
    Java 之 Java 注释与 API
    Java 之 第一个Java程序
    Java 之 Java开发环境
  • 原文地址:https://www.cnblogs.com/buaaZhhx/p/12378004.html
Copyright © 2020-2023  润新知