inorder: 중위순회 (L-root-R)
preorder: 전위순회 (root-L-R)
postorder: 후위순회 (L-R-root)
갠적인 암기팁..
in은 어떤것 안에,, 사이에,,, 중간에,,, 있는것이므로 루트를 중간에 순회
pre- 의미가 전前,, 먼저,, 이런것이므로 루트를 먼저 순회
post- 는 후後이므로 루트를 가장 나중에 순회
전 이렇게 외웠는데 아닐수도있음 내가 모를수도,,,
떠올리지 못했을수도
내가 무지했을수도
내가 감히
내가 또 잘못을
import sys
input = sys.stdin.readline
n = int(input())
tree = {}
for i in range(n):
c, l, r = map(str, input().split())
tree[c] = l, r
def inorder(v):
if v != ".":
inorder(tree[v][0])
print(v, end = "")
inorder(tree[v][1])
def preorder(v):
if v != ".":
print(v, end = "")
preorder(tree[v][0])
preorder(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')
'🖥' 카테고리의 다른 글
[Raspberry pi] 맥에서 라즈베리파이 접속하기 (ssh 및 원격접속) (2) | 2023.03.01 |
---|---|
[Python3] 최대공약수, 최소공배수 구하기 (math 라이브러리) (0) | 2023.01.29 |
[python] 배열 안의 원소 길이 순으로 리스트 정렬하기 (0) | 2022.10.24 |
[python3] 소인수분해, 기약분수 만들기 (0) | 2022.10.17 |
[Python3] 이진탐색 알고리즘 반복문, 재귀 (0) | 2022.10.14 |
댓글