Leetcode第20题 有效的括号
思路
利用栈结构,遇到左括号入栈,遇到右括号时将对应栈顶左括号出栈,则遍历完所有括号后 stack 仍然为空;
/*** @param {string} s* @return {boolean}*/var isValid = function(s) {const n = s.length;if (n % 2 === 1) {return false;}const pairs = new Map([[')', '('],[']', '['],['}', '{']]);const stk = [];for (let ch of s){if (pairs.has(ch)) {if (!stk.length || stk[stk.length - 1] !== pairs.get(ch)) {return false;}stk.pop();}else {stk.push(ch);}};return !stk.length;};
