leetcode#20 Valid Parentheses

정은경·2022년 5월 24일
0

알고리즘

목록 보기
52/125

1. 문제

2. 나의 풀이

2.1 stack을 이용해서 풀기

class Solution:
    def isValid(self, s: str) -> bool:
        stack = []
        result = []
        
        
        
        left_into_right_dict = {
            "(" : ")",
            "{": "}",
            "[": "]"
        }
        
        for char in s:
            # print(stack, char)
            if len(stack) > 0:
                top = stack[-1]
                # print(right_end.values())
                if char in left_into_right_dict.values():
                    # print("hahah", top)
                    if top in left_into_right_dict.keys() and char == left_into_right_dict[top]:
                        stack.pop()
                        continue
                stack.append(char)
                
                
            else:
                stack.append(char)
        
        if len(stack) < 1:
            return True
        return False

3. 남의 풀이

3.1 스택을 이용한 풀이

Reference

1. 왜 스택을 쓰는 가?

profile
#의식의흐름 #순간순간 #생각의스냅샷

0개의 댓글