美文网首页
经典算法 — 有效的括号

经典算法 — 有效的括号

作者: 刘彪lastbee | 来源:发表于2019-03-27 22:17 被阅读0次

    经典算法 — 有效的括号

    • 给定一个只包括 '(',')','{','}','[',']' 的字符串,判断字符串是否有效。有效字符串需满足:左括号必须用相同类型的右括号闭合。左括号必须以正确的顺序闭合。注意空字符串可被认为是有效字符串。
    • 示例:
        输入: "()"
        输出: true
    
    • 算法
    /**
     * @param {string} s
     * @return {boolean}
     */
    var isValid = function(s) {
      let stack = []
      let _obj = {
        ')': '(',
        ']': '[',
        '}': '{'
      }
      for(var i in s) {
       if(!_obj [s[i]]) {
          stack.push(s[i])
       } else {
          if(stack.pop() != _obj [s[i]]) {
            return false
          }
       }
      }
      if(stack.length) {
        return false
      } else {
        return true 
      }
    }
    
    • 只是最基本的解决方案,应该有优化的空间,明天在研究一下

    相关文章

      网友评论

          本文标题:经典算法 — 有效的括号

          本文链接:https://www.haomeiwen.com/subject/uxhxbqtx.html