[강의] 다음은 패스트 캠퍼스 알고리즘 / 기술면접 완전 정복 올인원 패키지를 통해 학습 및 정리한 내용입니다.
트리 구조
트리는 자료구조이며 노드와 브런치를 이용해서 구성된다. 사이클(경로의 시작과 종료가 동일한 경우)을 이루지 않는 것이 특징이며 이진 트리 형태의 구조로 탐색 알고리즘 구현을 위해 많이 사용된다.

알아둘 용어
Node : 트리에서 데이터를 저장하는 기본 요소이다. 이때 데이터와 연결된 다른 노드에 대해 Branch 정보를 포함한다.
Root Node : 트리의 최상단에 있는 노드이다. 만약 이진 탐색 트리를 적용한다면 주어진 값들을 크기의 순서대로 정렬했을 때 가장 중앙에 위치하는 값 즉, 중앙값으로 선정한다.
Level : 최상위 노드를 Level 0으로 했을 때, 하위 Branch로 연결된 노드의 깊이를 나타낸다.
Parent Node : 어떤 노드의 상위에 위치해 있을 경우 이를 부모 노드라고 한다.
Child Node : 어떤 노드의 하위에 위치해 있을 경우 이를 자식 노드라고 한다.
Leaf Node(Terminal Node) : Child Node가 하나도 없는 노드를 의미한다.
Sibiling(Brother Node) : 동일한 Parent Node를 가진 노드
Depth : 트리에서 Node가 가질 수 있는 최대 Level
이진 트리와 이진 탐색 트리
이진 트리는 노드의 최대 Branch가 2인 트리를 의미한다. 이진 탐색 트리(Binary Search Tree, BST)는 왼쪽 노드는 해당 노드보다 작은 값, 오른쪽 노드는 큰 값을 가지고 있다. 이진 탐색 트리의 장점으로는 탐색 속도를 개선할 수 있는 것이다. 이러한 장점으로 주요 용도로 데이터 탐색시 사용된다.
패스트캠퍼스 [직장인 실무교육]
fastcampus.co.kr
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'CS > Algorithm' 카테고리의 다른 글
패스트캠퍼스 챌린지 10일차 (0) | 2022.02.02 |
---|---|
패스트캠퍼스 챌린지 9일차 (0) | 2022.02.01 |
패스트캠퍼스 챌린지 7일차 (0) | 2022.01.30 |
패스트캠퍼스 챌린지 6일차 (0) | 2022.01.29 |
패스트캠퍼스 챌린지 5일차 (0) | 2022.01.28 |