前端演算法:由於只包含字元的字串'(',')','{','}','['和']',確定輸入字串是有效的
阿新 • • 發佈:2018-12-23
由於只包含字元的字串’(’,’)’,’{’,’}’,’[‘和’]’,確定輸入字串是有效的。
如果輸入字串有效:
必須使用相同型別的括號關閉左括號。
必須以正確的順序關閉左括號。
請注意,空字串也被視為有效。
例1:
輸入: “()”
輸出: true
例2:
輸入: “()[] {}”
輸出: true
例3:
輸入: “(]”
輸出: false
例4:
輸入: “([]]”
輸出: false
例5:
輸入: “{[]}”
輸出: true
<script> var map = { "(": ")", "[": "]", "{": "}" } var isValid = function(s) { var stack = []; for (var i = 0; i < s.length; i++) { var el = s[i]; if (map[el]) { stack.push(map[el]); } else { if (el !== stack.pop()) { return false; } } } return stack.length === 0; }; console.log(isValid('(1)')); </script>