문제링크:https://www.acmicpc.net/problem/1991
1991번: 트리 순회
첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파
www.acmicpc.net
다루는 주제: 그래프탐색
import sys
N = int(sys.stdin.readline())
tree = {}
for _ in range(N):
root, left, right = sys.stdin.readline().strip().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")
'Algorithm > 백준(파이썬)' 카테고리의 다른 글
백준 1260 파이썬(Python) 문제풀이 DFS와 BFS (1) | 2023.04.23 |
---|---|
백준 1997 파이썬(Python) 문제풀이 최소 스패닝 트리 (0) | 2023.04.22 |
백준 5904 파이썬(Python) 문제풀이 Moo (0) | 2023.04.20 |
백준 2805 파이썬(Python) 문제풀이 나무자르기 (0) | 2023.04.19 |
백준 2493 파이썬(Python) 문제풀이 탑 (0) | 2023.04.19 |