알고리즘 오답노트 08
올바른 괄호
스택의 아주 좋은 예시 문제라서 기록해둔다!
1. 닫는 괄호는 반드시 열린 괄호 다음에 나와야하고,
2. 등장한 열린 괄호 갯수보다 닫힌 괄호가 많아선 안된다.
- 즉 열린 괄호를 스택에 쌓아두고 닫힌 괄호가 나올때마다 스택에서 뽑아내면서 조건을 확인해봐야 한다.
s = "(())()"
def is_correct_parenthesis(string):
stack = []
for i in string:
if i == "(":
stack.append(i)
elif i == ")":
if len(stack):
stack.pop()
else:
return False
if len(stack) == 0:
return True
else:
return False
print(is_correct_parenthesis(s)) # True 를 반환해야 합니다!
Author And Source
이 문제에 관하여(알고리즘 오답노트 08), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@uvula6921/알고리즘-오답노트-08저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)