zoukankan      html  css  js  c++  java
  • 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();
        }
    }
    

      

  • 相关阅读:
    linux进程管理类
    linux关机重启指令
    linux分区及磁盘挂载
    linux的运行级别
    property
    访问限制机制
    类的组合与封装
    继承与派生
    logging模块
    re模块
  • 原文地址:https://www.cnblogs.com/buaaZhhx/p/12378004.html
Copyright © 2011-2022 走看看