def step1(inOrder): isp = {'+': 1, '*': 2, '(': 0} icp = {'+': 1, '*': 2, '(': 3} order = {'+': 1, '*': 2} ST = [] postOrder = [] for token in inOrder: if token.isdecimal(): postOrder.append(token) else: # 왼쪽 괄호가 있는 경우 # isp[ST[-1]] >= icp[token] # 스택에 있는 거랑 token이랑 우선순위를 생각 while len(ST) > 0 and order[ST[-1]] >= order[token]: postOrder.append(ST.pop()) ST.append(token) while ST: postOrder.append(ST.pop()) # if len(ST) and order[ST[-1]] < order[token]: # ST.append(token) # else: # while len(ST) ...
#1223
#python
#SWEA
#계산기2
#문제풀이
#알고리즘
원문링크 : SWEA-계산기2(1223)