20. 有效的括号

95 字
1 分钟
20. 有效的括号

思路:后进的右括号匹配到左括号,左括号就弹出,符合后进先出

var isValid = function (s) {
if(s.length%2!==0) return false
let stack = []
for(let i = 0;i < s.length;i ++) {
const curStr = s[i]
const map = new Map([['[',']'],['{','}'],['(',')']])
const isLeft = ['{','(','['].includes(curStr)
if(isLeft) {
stack.push(curStr)
} else {
if(stack.length === 0) return false
const lastStr = stack[stack.length - 1]
if(map.get(lastStr) === curStr) {
stack.pop()
} else {
return false
}
}
}
return stack.length === 0
};

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

20. 有效的括号
https://an2333.com/posts/basic/algorithm/stack/20/
作者
Annan
发布于
2025-05-05
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
Annan
写点前端,聊点 AI。
公告
博客已迁移到 Astro + Firefly,旧文章正在陆续搬家中。
分类
标签
站点统计
文章
50
分类
7
标签
28
总字数
84,160
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
GitHub Actions
博客版本
Firefly v6.16.8
文章许可
CC BY-NC-SA 4.0

当前页面没有目录

文章目录

当前页面没有目录