전체 글

실리콘 밸리에서 개발자로 살아남기 🌉 미국 유학생의 취준, 개발 공부 여정을 담습니다. #빅테크 #SW #샌프란
개발공부/algorithm

[SWEA] [python] 1231.중위순회 - tree

문제 SWEA 1231 중위순회 D4 python 문제링크 SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 나의 코드 트리를 생성한 후 중위순회를 진행해주는 문제다. 배열로 인덱스 별 값들을 받아줬고, 해당 배열에 대해 중위순회를 진행했다. 왼쪽 노드는 node * 2, 오른쪽 노드는 node * 2 + 1 으로 처리해주었다. def inorder(idx): if idx > N: return # if left node exists if (idx * 2)

개발공부/algorithm

[SWEA] [python] 5174, 5176, 5177, 5178 - Tree

문제링크: 문제해결 기본 Tree SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 5174-Subtree D2 def node_num(root): global cnt node = [root] while node: rt = node.pop() if left[rt]: node.append(left[rt]) # should uncomment #cnt +=1 if right[rt]: node.append(right[rt]) # should uncomment #cnt +=1 T = int(input()) for tc in range(T): E, N = map(int, input().split()) arr = list(m..

개발공부/개발

Tree Traversal - Pre-order, In-order, Post-order

Tree를 순회하는 방법에는 세가지가 있다. 1. Pre-order Traversal (전위순회법) Root node에서 시작하여 왼쪽 부 트리를 순회하고 가장 마지막의 부트리까지 순회한다 오른쪽 부 트리를 순회하고 가장 마지막의 부트리까지 순회한다. DFS와 비슷한 논리라고 생각하면 쉽다. Pseudocode: Pre_order def pre_order(T): if T is not null: visit(T) pre_order(T.left) pre_order(T.right) 2. In-Order Traversal (중위 순회법) 트리의 가장 왼쪽 노드로 이동한다. 왼쪽 노드의 루트를 탐색한다. 루트의 오른쪽 노드를 탐색한다. 트리의 가장 왼쪽에 있는 노드부터 시작하여 탐색한다고 생각하면 이해가 쉽다. d..

so.py
so.py