[Leetcode] 0020. 유효한 괄호

Python, C++, JavaScript, SQL 및 TypeScript의 다양한 LeetCode 솔루션을 살펴보세요. 여러 프로그래밍 언어로 인터뷰 준비, 학습 및 코드 연습에 적합합니다. Github 레포 링크

쉬운


문자열이 주어지면 에스 문자만 포함 '('')''{''}''[' 그리고 ']'입력 문자열이 유효한지 확인합니다.

입력 문자열은 다음과 같은 경우 유효합니다.

  1. 열린 괄호는 같은 유형의 괄호로 닫아야 합니다.
  2. 열린 괄호는 올바른 순서로 닫아야 합니다.
  3. 모든 닫힌 괄호에는 같은 유형의 열린 괄호가 대응됩니다.

 

예시 1:

입력: s = "()"
산출: 진실

예 2:

입력: s = "()[]{}"
산출: 진실

예시 3:

입력: 스 = "(]"
산출: 거짓

 

제약:

  • 1 <= s.길이 <= 10 4
  • 에스 괄호로만 구성됨 '()[]{}'.

파이썬

				
					# 시간 복잡도: O(n) # 공간 복잡도: O(n) 클래스 솔루션: def isValid(self, s: str) -> bool: bracketMap = {"(": ")", "[": "]", "{": "}"} openSet = set(["(", "[", "{"]) stack = [] for char in s: if char in openSet: stack.append(char) elif stack and char == bracketMap[stack[-1]]: stack.pop() else: return False return stack == [] Input = "(())" print(Solution().isValid(Input))
				
			
ko_KR한국어