文章目录
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;
};

使用栈解决JavaScript中有效括号的问题
本文探讨了如何利用栈数据结构来解决有效括号的验证问题。通过遍历给定的字符串,遇到左括号时将其对应的右括号压入栈中,遇到右括号时检查栈顶元素是否匹配,不匹配或栈为空则返回false。最后,如果栈为空且所有括号都已匹配,则返回true。这是一个经典的计算机科学问题,常见于面试和算法练习。
1489

被折叠的 条评论
为什么被折叠?



