October 1Easy
Valid parentheses
- Stack
- Bracket Sequences
Problem
Given a string s containing just the characters '(', ')', '{', '}', '[' and ']', determine if the input string is valid.
An input string is valid if: 1. Open brackets must be closed by the same type of brackets. 2. Open brackets must be closed in the correct order. 3. Every close bracket has a corresponding open bracket of the same type.
Solution
class Solution:
def isValid(self, s: str) -> bool:
stack = []
pairs = {")": "(", "]": "[", "}": "{"}
for char in s:
if char not in pairs:
stack.append(char)
else:
if not stack or pairs[char] != stack.pop():
return False
return not stack