[백준] 1991번: 트리 순회 문제 풀이 파이썬
문제 링크
https://www.acmicpc.net/problem/1991
풀이 방식
- 각 노드들을 입력 받아 그래프 형식으로 트리를 저장한다.
- 전위순회, 중위순회, 후위순회를 각각 함수로 정의한다.
- 순회 방식에 따라 출력과 재귀함수의 순서를 달리해준다.
전체 코드
from sys import stdin
def pre_order(root):
if root != '.':
print(root, end='')
pre_order(tree[root][0])
pre_order(tree[root][1])
def in_order(root):
if root != '.':
in_order(tree[root][0])
print(root, end='')
in_order(tree[root][1])
def post_order(root):
if root != '.':
post_order(tree[root][0])
post_order(tree[root][1])
print(root, end='')
N = int(input())
tree = {}
for i in range(N):
node, left, right = stdin.readline().split()
tree[node] = [left, right]
pre_order('A')
print()
in_order('A')
print()
post_order('A')
Author And Source
이 문제에 관하여([백준] 1991번: 트리 순회 문제 풀이 파이썬), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@hyuntall/백준-1991번-트리-순회-문제-풀이-파이썬저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)