Ruby's Louvre

每天学习一点点算法

导航

leetcode 20. Valid Parentheses

判定括号是否合法,这是栈的应用

var isValid = function (s) {
     if (string.length % 2 !== 0 ) return false; //必须是偶数
      var stack = []
      var map = {
        '[': ']',
        '{': '}',
        '(': ')'
      }

      for (var i = 0; i < s.length; i++) {
        var c = s[i];;
        if (c == '[' || c == '(' || c == '{') {
          stack.push(c)
        } else {
          var open = stack.pop();
          if (map[open] !== c) {
            return false
          } 
        }
      }
      return stack.length == 0
    };

posted on 2019-12-15 00:46  司徒正美  阅读(175)  评论(0编辑  收藏  举报