백준 | 트리 순회

jeonghens·2024년 11월 29일

알고리즘: BOJ

목록 보기
95/125

백준 트리 순회


import sys


# 트리 순회 함수 정의
def preorder(node):
    if node == '.':
        return ''
    return node + preorder(tree[node][0]) + preorder(tree[node][1])

def inorder(node):
    if node == '.':
        return ''
    return inorder(tree[node][0]) + node + inorder(tree[node][1])

def postorder(node):
    if node == '.':
        return ''
    return postorder(tree[node][0]) + postorder(tree[node][1]) + node


# 입력
n = int(sys.stdin.readline().strip())

tree = {}
for _ in range(n):
    parent, left, right = sys.stdin.readline().strip().split()
    tree[parent] = [left, right]

print(preorder('A'))
print(inorder('A'))
print(postorder('A'))
profile
알고리즘이나 SQL 문제 풀이를 올리고 있습니다. 피드백 환영합니다!

0개의 댓글