2013-02-01 9 views
2

그래서 균형 이진 검색 트리에 대해 연구했습니다.균형 이진 검색 트리의 정의

내가 봤 한

, 이것은 내가 발견 한 것입니다 :

모든 노드의 두 개의 하위 트리의 깊이가 (위키 백과) 1 이하로 차이가있는 이진 트리

수 균형 이진 트리를 단지 ceil (log (n + 1)/log 2) 이상의 높이를 갖는 트리로 정의하지 않을 것인가?

그리고 대답은 Is Binary Search tree balanced? 인 것 같습니다. 질문자는 이미 똑같은 질문을 한 것 같지만, 받아 들인 대답은 피보나치 나무의 예를 들어서 그 아이디어를 거부합니다. 피보나치 나무는 균형 잡힌 나무가 아닙니까? 응답자가 AVL 트리의 균형 잡힌 트리의 정의와 혼동을 일으킬 수 있다고 생각합니다. 내 이해에 따라 특정 불균형 트리를 허용합니다.

+0

BST의 가장 좋은 경우는 log (n)이고 최악의 경우는 n입니다. 균형 잡힌 BST의 개념은 모든 노드의 두 하위 트리의 깊이가 1 이하로 차이가 나는 것과 같습니다. 그러나 AVL 트리 또는 Red-Black 트리는 알고리즘에 따라 자체 균형 조정 BST의 구현이므로 log (n)의 완벽하게 균형 잡힌 트리를 구현하지는 않지만 nlog (n)의 순서로 구현하면 훨씬 더 좋습니다 n보다. – john

+0

당신은 확실히 그 nlogn (n)입니까? 그것은 막혀 야한다 (n) 맞습니까? n은 실제로 nlog (n)보다 낫다. – bysreg

+0

아, 그래, C john

답변

1

내 계산이 잘못되지 않으면 정의가 작동하지 않습니다. 예를 들어 높이 6의 전체 이진 트리를 가져 가면 노드는 63 개가됩니다. 맨 아래쪽에있는 형제 두 명과 부모를 제거하면 노드가 60 개가됩니다. 이 트리는 균형이 맞지 않지만 높이는 여전히 ceil과 같습니다 (log (n + 1)/log 2).

+0

와 함께 막히기 쉬웠을거야. 수식은 노드가 n 인 이진 트리가 최대 높이 h와 균형을 이룰 수 있다고 말하지만 트리의 spesific 구조가 균형을 이루는 지 여부는 알 수 없습니다. – bysreg

관련 문제