-
코드
class Node: def __init__(self, node, left, right): self.node = node self.left = left self.right = right def preorder(node): print(node.node, end='') if node.left != '.': preorder(tree[node.left]) if node.right != '.': preorder(tree[node.right]) def inorder(node): if node.left != '.': inorder(tree[node.left]) print(node.node,end='') if node.right != '.': inorder(tree[node.right]) def postorder(node): if node.left != '.': postorder(tree[node.left]) if node.right != '.': postorder(tree[node.right]) print(node.node,end='') if __name__ == '__main__': n = int(input()) tree = dict() for _ in range(n): node, left, right = map(str, input().split()) tree[node] = Node(node=node, left=left, right=right) preorder(tree['A']) print() inorder(tree['A']) print() postorder(tree['A'])
'알고리즘 > 백준' 카테고리의 다른 글
[백준] 5639번 이진 검색 트리 (파이썬) (0) 2022.01.05 [백준] 2263번 트리의 순회 (파이썬) (0) 2022.01.05 [백준] 1967번 트리의 지름 (파이썬) (0) 2022.01.05 [백준] 1167번 트리의 지름 (파이썬) (0) 2022.01.05 [백준] 11725번 트리의 부모 찾기 (파이썬) (0) 2022.01.05