[파이썬]백준 1991 트리순회

링크

백준 1991 트리순회


재귀를 통해 트리를 순회하며 pre, in, post를 구분해주면 쉽게 풀 수 있다.


정답 코드

import sys; input = sys.stdin.readline

def order(p):
    pre_in_post_order[0] += p
    if adj[p][0] != '.':
        order(adj[p][0])
    pre_in_post_order[1] += p
    if adj[p][1] != '.':
        order(adj[p][1])
    pre_in_post_order[2] += p

N = int(input())
adj = {}
pre_in_post_order = ['', '', '']
for _ in range(N):
    p, lc, rc = input().split()
    adj[p] = [lc, rc]

order('A')

print('\n'.join(pre_in_post_order))

알게된 것👨‍💻

  • 재귀를 통한 트리 순회

좋은 웹페이지 즐겨찾기