728x90
반응형
https://www.acmicpc.net/problem/1991
아이디어
인덱스 값이 문자열이기 때문에 dict 형태로 저장한다.
그 후 학교에서 배운 전위, 중위, 후위순회로 DFS로 탐색을 진행하면서 출력을 뽑아낸다.
n = int(input())
tree = {}
for i in range(n):
root, left, right = input().split()
tree[root] = [left, right]
def preorder(v):
if v !=".":
print(v, end="")
preorder(tree[v][0])
preorder(tree[v][1])
def inorder(v):
if v !=".":
inorder(tree[v][0])
print(v, end="")
inorder(tree[v][1])
def postorder(v):
if v !=".":
postorder(tree[v][0])
postorder(tree[v][1])
print(v, end="")
preorder("A")
print()
inorder("A")
print()
postorder("A")
완성
728x90
반응형
'알고리즘' 카테고리의 다른 글
[백준] 11660번: 구간 합 구하기 5 - python (0) | 2024.04.11 |
---|---|
[백준] 9465번: 스티커 - python (0) | 2024.04.11 |
[백준] 11725번: 트리의 부모 찾기 - python (0) | 2024.04.09 |
[백준] 15666번: N과 M (12) - python (0) | 2024.04.09 |
[백준] 15665번: N과 M (11) - python (0) | 2024.04.09 |