def isValid(self, s: str) -> bool:
table = {
"}" : "{",
")" : "(",
"]" : "["
}
stack = []
for c in s:
if c in table:
# stack 마지막과 c가 [] {} () 이런식으로 되는지 확인
if stack and stack[-1] == table[c]:
stack.pop()
else:
return False
else:
stack.append(c)
return True if not stack else False
'알고리즘' 카테고리의 다른 글
<리트코드> 622번 파이썬 알고리즘 [원형 큐] (0) | 2021.12.06 |
---|---|
<리트코드> 739번 파이썬 알고리즘 [스택] (0) | 2021.12.05 |
<리트코드> 206번 파이썬 알고리즘 [연결 리스트 역순] (0) | 2021.12.03 |
<리트코드> 21번 파이썬 알고리즘 [연결 리스트] (0) | 2021.12.01 |
<백준> 5525번 파이썬 알고리즘 (0) | 2021.11.28 |