티스토리 뷰
이 내용을 보기전에 이전 포스팅 [배열로 이진탐색트리 만들기]와 [AVL 트리]을 확인하자.
[ 트리의 Balance 확인하기 ]
어떤 이진트리가 주어졌을 때, 이 이진트리의 Balance가 맞는지 확인하는 함수를 구해보자. 이 개념은 AVL트리를 구성할 때 나오는 개념이다. 또한, 여기서 말하는 Balance가 맞다는 의미는 어떤 노드의 양쪽 서브트리의 길이 차이가 1을 넘지 않는다는 것을 의미한다.
아래의 그림을 살펴보자. 각각의 노드에 대한 Balance 값을 계산한 그림인데, Balance 값은 해당 노드를 기준으로 왼쪽 서브트리의 높이에서 오른쪽 서브트리의 높이를 뺀 값이다. 노드 7에 대한 Balance 값이 +2임을 확인할 수 있는데 이는 왼쪽 서브트리가 오른쪽 서브트리보다 높이가 2 크다는 뜻이고, 이는 Balance가 맞지 않다는 뜻이다.
'IT 이론 > 자료구조' 카테고리의 다른 글
[알고리즘] 해시 테이블 :: 늦깎이 IT (0) | 2019.05.02 |
---|---|
[자료구조] 주어진 트리가 이진탐색트리인지 확인하기 (0) | 2019.05.01 |
[자료구조] 배열로 이진탐색트리 만들기 :: 늦깎이 IT (0) | 2019.05.01 |
[자료구조] AVL 트리 :: 늦깍이 IT (0) | 2019.04.30 |
[자료구조] 이진탐색트리 :: 늦깍이 IT (0) | 2019.04.30 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
TAG
- DFS
- 14888
- 정렬
- 탐색
- 영역 구하기
- 백준
- 배열
- 알고리즘
- 구현
- 우선순위 큐
- 시뮬레이션
- 알고스팟
- 리스트
- 탈주범 검거
- 힙
- BFS
- 큐
- 최대힙
- 연산자 끼워넣기
- SWEA
- 구슬 탈출2
- 나무 재테크
- 중간값
- 브루트포스
- 자바
- 삼성
- 트리
- 최소힙
- 힙정렬
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
글 보관함