250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
Tags
- HTTP
- SpringSecurity
- Kruskal
- 스케줄링
- 자료구조
- python
- AVL트리
- 강화학습
- 연결리스트 종류
- 힙트리
- 엔티티 그래프
- 최대 힙
- 최소힙
- 연결리스트
- posix
- 백준장학금
- spring
- 이분탐색이란
- 멀티프로세서
- jpa n+1 문제
- 완전이진트리
- JPA
- 백준 장학금
- 운영체제
- 알고리즘
- 점근적 표기법
- JVM
- 프로세스
- MSA
- heapq
Archives
- Today
- Total
KKanging
[자료구조] 완전 이진트리란? 본문
완전 이진트리란?
- 완전 이진트리
- 자식 노드가 왼쪽부터 순서적으로 채워진 이진트리 높이가 균형을 유지
완전 이진트리 표현
- 배열로 표현한다.
- 이유는 완전이진트리의 속성인 균형이 유지되기 때문
완전 이진트리 자료구조
- 0부터 시작해도 되지만 노드의 인덱싱의 조금 더 가시성이 좋기 때문에 1부터 시작해도 된다.
- 1부터 시작할 경우
- 배열 인덱스 i의 부모노드: i/2의 바닥함수(내림) 노드
- 배열 인덱스 i의 왼쪽 자식: 2i의 노드
- 배열 인덱스 i의 오른쪽 자식: 2i + 1의 노드
- 완전 이진트리의 레벨 i에서 노드의 수는 2^(i-1)개
- 완전이진트리의 높이가 h일 경우 최대 노드의 수는 2^h -1개
- 완전 이진트리에서 노드의 수 n일 경우 트리의 높이는 O(logn)
- 완전이진트리를 사용한 알고리즘의 수행시간은 트리의 높이에 비례
완전 이진트리의 응용
완전이진 트리만 사용하는 경우는 별로 없다.
완전이진트리의 종류인 힙트리를 사용하여 많이 사용한다.
'cs > 자료구조' 카테고리의 다른 글
[자료구조] 이진트리란 && 전위 중위 후위 순회 구현(Java) (0) | 2023.07.20 |
---|---|
[자료구조] 힙트리의 정의 와 구현 (Java) (0) | 2023.07.15 |
[자료구조] 트리란? (0) | 2023.07.13 |
[자료구조] 덱(Deque)의 개념과 구현(Java) (0) | 2023.07.11 |
[자료구조] 큐(Queue)의 개념과 원형 큐 구현(Java) (5) | 2023.07.10 |