728x90
https://www.youtube.com/watch?v=ebp6xyrArKo&list=PLFgS-xIWwNVX-zm4m6suWC9d7Ua9z7fuT&index=36
📌 이진트리
- 각 노드의 자신 노드(차수)의 개수가 2개 이하로 구성된 트리
- 트리 영역에서 가장 많이 사용
◾ 이진트리의 종류
- 편향 이진트리 : 노드들이 한쪽으로 편향되어 있음
→ 탐색속도 저하, 공간 낭비 多 - 포화 이진트리 : 트리의 높이가 모두 일정, 리프 노드가 모두 꽉 차 있음
- 완전 이진트리 : 마지막 레벨을 제외하고 노드들이 채워져있고 마지막 레벨은 왼쪽부터 채워진 트리
→ 코딩테스트에서 일반적으로 사용
◾ 이진트리의 순차 표현 (배열로 표현)
◾ 배열과 인덱스간의 상관관계
이동 목표 노드인덱스 연산제약조건 (N=노드개수)
루트 노드 | index = 1 | |
부모 노드 | index = index /2 | 현재 노드가 투르가 아님 |
왼쪽 자식 노드 | index = index *2 | index * 2 <= N |
오른쪽 자식 노드 | index = index *2 +1 | index *2 +1 <=N |
728x90
'Java > Do it 알고리즘 코딩테스트 핵심이론 강의' 카테고리의 다른 글
알고리즘 코딩테스트 핵심이론 강의 - 최소공통조상(LCA) 기본편 (0) | 2023.08.09 |
---|---|
알고리즘 코딩테스트 핵심이론 강의 - 세그먼트 트리 (0) | 2023.08.09 |
알고리즘 코딩테스트 핵심이론 강의 - 트리 알아보기 (0) | 2023.08.09 |
알고리즘 코딩테스트 핵심이론 강의 - 최소신장트리(MST) (0) | 2023.08.09 |
알고리즘 코딩테스트 핵심이론 강의 - 플로이드-워셜 (0) | 2023.08.09 |