[CodeKata] -8

김가람휘·2022년 2월 23일
0

CodeKata

목록 보기
8/28

def is_valid(string):
    my_list = ['(','{','[']
    my_list2 = [')','}',']'] 
    result = []

    for i in string:
        if i in my_list:
            result += i
        elif i in my_list2:
            if len(result) == 0:
                return False 
            if my_list.index(result[-1]) != my_list2.index(i):
                return False
            del result[-1] # 기호가 짝이 맞으면 result에서 삭제
        else:
            return False

    if len(result) != 0: # 닫히지 않고 남은 기호들이 있으면 false 모두 닫혔으면 result의 길이는 0으로 true
        return False
    return True
def is_valid(string):
  stack=[]
  back_bracket_dict={')':'(', ']':'[', '}':'{'}
  for bracket in string:
    if bracket not in back_bracket_dict:
      stack.append(bracket)
    else:
      if stack :
        top=stack.pop()
      else:
          return False
      if back_bracket_dict[bracket] != top:
        return False
  if len(stack) != 0:
      return False
  return True

0개의 댓글