# 20. Valid Parentheses

Valid Parentheses - LeetCode

Given a string s 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.
``````

Example 1: Input: s = “()” Output: true Example 2: Input: s = “()[]{}” Output: true Example 3: Input: s = “(]” Output: false

Constraints:

``````1 <= s.length <= 104
s consists of parentheses only '()[]{}'
``````

• code
``````class Solution:
def isValid(self, s: str) -> bool:
dic = {')':'(','}':'{',']':'['}
stack = []
for c in s:
if c not in dic:
stack.append(c)
else:
if not stack or stack[-1] != dic[c]: return False
stack.pop()
return not stack
``````
• code
``````class Solution:
def isValid(self, s: str) -> bool:
par = {"(":")", "{":"}", "[":"]"}
stack = []
for v in s:
if v in par:
stack.append(v)
else:
if not stack or par[stack.pop()] != v:
return False
return not stack

``````