취준시절/백준

[백준 1991] Python - 트리 순회

MAYMIN 2021. 8. 25. 16:32
728x90
SMALL
n = int(input())
tree = {}

# 전위 순회 preorder : root -> left -> right
# 중위 순회 inorder : left -> root -> right
# 후위 순회 postorder : left -> right -> root

for _ in range(n):
    root,left,right = map(str,input().split())
    tree[root] = [left,right]

def preorder(root):
    if root!='.':
        print(root,end='')
        preorder(tree[root][0])
        preorder(tree[root][1])

def inorder(root):
    if root!='.':
        inorder(tree[root][0])
        print(root,end='')
        inorder(tree[root][1])
def postorder(root):
    if root!='.':
        postorder(tree[root][0])
        postorder(tree[root][1])
        print(root,end='')
preorder('A')
print()
inorder('A')
print()
postorder('A')
728x90
LIST