blob: 6b1a77a428f7f75b79c6fe80576416d87967c98b (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
Image you are buliding a compiler.
Before running any code, the compiler must check
that the parentheses in the program are balanced.
Every opening bracket must have a corresponding closing bracket.
We can approximate this using strings.
Given a string containing just the characters '(', ')', '{', '}', '[' and ']',
determine if the input string is valid.
An input string is valid if:
* open brackets are closed by the same type of brackets.
* open brackets are closed in the correct order.
* Note that an empty string is also considered valid.
Example:
Input: "((()))"
Output: True
Input: "[()]{}"
Output: True
Input: "({[)]"
Output: False
```python
class Solution:
def isValid(self, s):
# TODO::
assert False, Solution.isValid("()(){(())")
assert True, Solution.isValid("")
assert True, Solution.isValid("([{}])()")
```
|