继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

20. 有效的括号

慕虎7371278
关注TA
已关注
手记 1125
粉丝 201
获赞 871

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

有效字符串需满足:

左括号必须用相同类型的右括号闭合。

左括号必须以正确的顺序闭合。

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

示例 1:

输入:"()"输出:true

示例 2:

输入:"()[]{}"输出:true

示例 3:

输入:"(]"输出:false

示例 4:

输入:"([)]"输出:false

示例 5:

输入:"{[]}"输出:true

class Solution:

    dic_left =['(','{','[']

    dict_right = [')','}',']']

    def isValid(self, s):

        """

        :type s: str

        :rtype: bool

        """

        length = len(s)

        dict_content = []

        if length%2!=0:

            return False

        i=0

        while i< length:

            if s[i] in self.dic_left:

                dict_content.append(s[i])

            else:

                if i==0:

                    return False

                elif self.dic_left.index(dict_content[dict_content.__len__()-1])== self.dict_right.index(s[i]):

                    dict_content.pop(dict_content.__len__()-1)

                else:

                    return False

            i+=1

        if dict_content.__len__()>0:

            return False

        return True


webp



作者:不爱去冒险的少年y
链接:https://www.jianshu.com/p/5fae3744ecf3


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP