LeetCode-20(有效的括号)(Python)

image.png
解法一(44 ms 95.55%):
class Solution:
    def isValid(self, s):
        """
        :type s: str
        :rtype: bool
        """
        if len(s)==1 and (s==')' or s=='}' or s==']'):
            return False

        L=[]
        for i in s:
            if i == '(' or i == '{' or i == '[':
                L.append(i)
                continue

            if (i==')' or i=='}' or i==']') and L:
                temp=L.pop()
                if i==')' and temp!='(':
                    return False
                if i=='}' and temp!='{':
                    return False
                if i==']' and temp!='[':
                    return False
                continue

            if (i == ')' or i == '}' or i == ']') and not L:
                return False

        if L:
            return False
        else:
            return True

你可能感兴趣的:(LeetCode-20(有效的括号)(Python))