Leetcode: 20.Valid Parentheses有效的括号
发布日期:2021-09-14 15:33:09 浏览次数:3 分类:技术文章

本文共 670 字,大约阅读时间需要 2 分钟。

Valid Parentheses有效的括号

给定一个只包括 ‘(’,’)’,’{’,’}’,’[’,’]’ 的字符串,判断字符串是否有效。

有效字符串需满足:

  • 左括号必须用相同类型的右括号闭合。
  • 左括号必须以正确的顺序闭合。

注意空字符串可被认为是有效字符串。


输入:

"()"

输出:

true

输入:

"([)]"

输出:

false

方法一:堆

利用后进先出特性

class Solution {
public: bool isValid(string s) {
stack
st; for(auto c:s){
if(!st.empty()&&valid(c,st.top())) {
st.pop();} else st.push(c); } if(st.empty())return true; else return false; } bool valid(char c,char s){
if (s=='('&&c==')')return true; if (s=='['&&c==']')return true; if (s=='{'&&c=='}')return true; return false; } };

转载地址:https://blog.csdn.net/weixin_42490152/article/details/101485027 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:Leetcode: 21. Merge Two Sorted Lists 合并两个有序链表
下一篇:Leetcode: 16.3Sum Closest 最接近的三数之和

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年04月25日 00时57分54秒