文章目录
20. 有效的括号 javascript
题目:
给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串 s ,判断字符串是否有效。
有效字符串需满足:
左括号必须用相同类型的右括号闭合。
左括号必须以正确的顺序闭合。
示例
输入:s = "()"
输出:true
输入:s = "()[]{}"
输出:true
输入:s = "(]"
输出:false
输入:s = "([)]"
输出:false
代码1 第一反应想到的肯定是栈
var isValid = function(s) {
// 栈
const stack = [];
for (let val of s) {
console.log(stack)
if (val === '(') stack.push(')');
else if (val === '[') stack.push(']');
else if (val === '{') stack.push('}');
else if (stack.length === 0 || val !== stack.pop()) return false;
}
return stack.length === 0;
};