Python、C++、JavaScript、SQL、TypeScript の多様な LeetCode ソリューションを探索してください。面接の準備、学習、複数のプログラミング言語でのコードの練習に最適です。 Github リポジトリ リンク
文字列を与える s
文字だけを含む '('
, ')'
, '{'
, '}'
, '['
そして ']'
入力文字列が有効かどうかを判断します。
入力文字列は次の場合に有効です。
- 開いた括弧は同じ種類の括弧で閉じる必要があります。
- 開いた括弧は正しい順序で閉じる必要があります。
- すべての閉じ括弧には、同じタイプの対応する開き括弧があります。
例 1:
入力: s = "()" 出力: 真実
例 2:
入力: s = "()[]{}" 出力: 真実
例 3:
入力: s = "(]" 出力: 間違い
制約:
1 <= s.length <= 10 4
s
括弧のみで構成されている'()[]{}'
.
パイソン
# 時間計算量: O(n) # 空間計算量: O(n) クラス ソリューション: def isValid(self, s: str) -> bool: bracketMap = {"(": ")", "[": "]", "{": "}"} openSet = set(["(", "[", "{"]) stack = [] for char in s: if char in openSet: stack.append(char) elif stack and char == bracketMap[stack[-1]]: stack.pop() else: return False return stack == [] Input = "(())" print(Solution().isValid(Input))