给定一个只包括
'(',')','{','}','[',']'的字符串s,判断字符串是否有效。有效字符串需满足:
- 左括号必须用相同类型的右括号闭合。
- 左括号必须以正确的顺序闭合。
- 每个右括号都有一个对应的相同类型的左括号。
示例 1:
**输入:**s = "()"
**输出:**true
示例 2:
**输入:**s = "()\[\]{}"
**输出:**true
示例 3:
**输入:**s = "(]"
**输出:**false
示例 4:
**输入:**s = "(\[\])"
**输出:**true
示例 5:
**输入:**s = "()"
**输出:**false
提示:
1 <= s.length <= 104s仅由括号'()[]{}'组成
cppclass Solution { public: bool isValid(string s) { stack<char> st; for(auto c:s) { if(c==')') { if(st.empty()||st.top()!='(') return false; else st.pop(); }else if(c==']') { if(st.empty()||st.top()!='[') return false; else st.pop(); }else if(c=='}') { if(st.empty()||st.top()!='{') return false; else st.pop(); }else{ st.push(c); } } return st.empty(); } };
LeetCode 20. 有效的括号
Liangwei Lin2026-05-10 14:01
相关推荐
JieE21216 小时前
LeetCode 56. 合并区间|超清晰 JS 图解思路,面试高频区间题Jack201 天前
HarmonyOS开发中错误处理策略:网络异常统一处理小小杨树1 天前
读懂色彩:拍照调色不再难JieE2122 天前
LeetCode 226. 翻转二叉树|JS 递归超详细拆解,二叉树入门经典题JieE2122 天前
LeetCode 104. 二叉树的最大深度|递归思路超详细拆解vivo互联网技术2 天前
CVPR 2026 | 全新强化学习框架 BeautyGRPO:重塑真实人像Darling噜啦啦2 天前
列表转树算法深度解析:从 Map 到 Reduce 的两种实现,面试高频考点用户497863050732 天前
(一)小红的数组操作怕浪猫2 天前
Electron 系列文章封面图