【LeetCode热题100(67/100)】有效的括号
题目地址:链接
思路: 通过栈来判断当前括号是否匹配。
- 如果当前为左括号,入栈
- 否则,出栈判断是否匹配以及长度,如果不匹配,返回 false
- 遍历后没有return false,说明当前括号为有效的,返回 true
/*** @param {string} s* @return {boolean}*/
var isValid = function(s) {let stk = [];let map = {')': '(', ']': '[', '}': '{'};for(let str of s) {if(str === '(' || str === '[' || str === '{') {stk.push(str);} else {if(stk.length) {let q = stk.pop();if(map[str] !== q){return false;}} else {return false;}}}return true;
};
