알고리즘

<리트코드> 20번 파이썬 알고리즘 [스택]

changha. 2021. 12. 4. 22:26
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