leetcode 20. 有効な括弧 (python3) 36 ミリ秒

タイトル説明:

「(」、「)」、「{」、「}」、「[」、「]」のみで構成される文字列を指定した場合、その文字列が有効かどうかを確認します。
有効な文字列は、次の条件を満たす必要があります。
開き括弧は同じ種類の閉じ括弧で閉じられる必要があります。
開き括弧は正しい順序で閉じる必要があります。
空の文字列は有効な文字列とみなされます。

例 1:

入力: "()"
出力: true

例 2:

入力: “()[]{}”
出力: true

例 3:

入力: "(]"
出力: false

例 4:

入力: 「([)]」
出力: false

例 5:

入力: “{[]}”
出力: true

問題解決のアイデア:

class Solution:
    def isValid(self, s: str) -> bool:
        output = []
        label = {')':'(', '}':'{', ']':'['}
        for idx in range(len(s)):
            if s[idx] in ['(', '{', '[']:
                output.append(s[idx])
            elif s[idx] in [')', '}', ']'] and len(output) == 0:
                return False
            elif s[idx] in [')', '}', ']'] and label[s[idx]] == output[-1]:
                output.pop()
            else:
                return False
        if len(output) != 0:
            return False
        else:
            return True

パフォーマンス分析:
ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/lanmengyiyu/article/details/107671891