중위순회 3

[트리 순회] 알고리즘 - 트리 순회

트리 순회 트리 구조에서 각각의 노드를 정확히 한 번만 체계적인 방법으로 방문하는 과정을 말한다. 순회의 종류 전위 순회(preorder) : 뿌리(root)를 먼저 방문한다. 중위 순회(inorder) : 왼쪽 하위 트리를 방문 후 뿌리(root)를 방문한다. 후위 순회(postorder) : 하위 트리를 모두 방문 후 뿌리(root)를 방문한다. 레벨(층별) 순서 순회(level-order, 너비 우선 순회) : 위쪽 node부터 아래방향으로 차례로 방문한다. ex) 전위 순회 순서 노드를 방문한다. 왼쪽 서브트리를 전위 순회한다. 오른쪽 서브트리를 전위 순회한다. 방문 순서 A, B, D, G, H, E, C, F, I 중위 순회 순서 왼쪽 서브트리를 중위 순회한다. 노드를 방문한다. 오른쪽 서브트..

알고리즘/개념 2023.07.28

[baekjoon] 백준 2263번 : 트리의 순회 (by python 파이썬) 재귀

https://www.acmicpc.net/problem/2263 2263번: 트리의 순회 첫째 줄에 n(1 ≤ n ≤ 100,000)이 주어진다. 다음 줄에는 인오더를 나타내는 n개의 자연수가 주어지고, 그 다음 줄에는 같은 식으로 포스트오더가 주어진다. www.acmicpc.net 정답 code #트리의 순회 import sys input = sys.stdin.readline sys.setrecursionlimit(10**5) n = int(input()) inorder = list(map(int,input().split())) postorder = list(map(int,input().split())) #후위순회에서 최상위노드를 찾은후 중위순회에서 찾기위해 인덱스번호 부여 nodenum = [0] ..

[baekjoon] 백준 1991번 : 트리 순회 (by python 파이썬) 재귀

https://www.acmicpc.net/problem/1991 1991번: 트리 순회 첫째 줄에는 이진 트리의 노드의 개수 N(1 ≤ N ≤ 26)이 주어진다. 둘째 줄부터 N개의 줄에 걸쳐 각 노드와 그의 왼쪽 자식 노드, 오른쪽 자식 노드가 주어진다. 노드의 이름은 A부터 차례대로 알파 www.acmicpc.net 정답 code #트리 순회 import sys input = sys.stdin.readline #전위 순회 def preorder(root): if root != '.': print(root, end='') preorder(tree[root][0]) preorder(tree[root][1]) #중위 순회 def inorder(root): if root != '.': inorder(tre..