Description
Given a string containing just the characters ‘(’, ‘)’, ‘{’, ‘}’, ‘[’ and ‘]’, determine if the input string is valid.
An input string is valid if:
- Open brackets must be closed by the same type of brackets.
- Open brackets must be closed in the correct order.
Note that an empty string is also considered valid.
Stack Solution
Keep a stack
- When a
(
arrives, push it into the stack - When a
)
arrives, compare it with the top of stack, if it forms a pair, pop it, else push it.
|
|
Notes
- We use a dict to check if the pair is valid.
- Watch out for corner case before indexig.
- Follow up