Drzewo binarne ma 1 lub 2 elementy podrzędne w węzłach innych niż liście i 0 węzłów w węzłach liści. Niech będzien węzły w drzewie i musimy je ułożyć w taki sposób, aby nadal tworzyły prawidłowe drzewo binarne.
Nie udowadniając, twierdzę, że aby zmaksymalizować wysokość, dane węzły powinny być ustawione liniowo, tj. Każdy węzeł inny niż liść powinien mieć tylko jedno dziecko:
O 1
|
O 2
|
O 3
|
O 4
|
O 5
|
O 6
|
O 7
|
O 8
Wzór na obliczenie relacji wysokości w kategoriach liczby węzłów jest prosty. Gdybyh jest zatem wysokością drzewa h = n - 1.
Teraz, jeśli spróbujemy zbudować binarne drzewo nwęzły o minimalnej wysokości (zawsze redukowalne do pełnego drzewa binarnego), musimy przejść jak najwięcej węzłów na wyższych poziomach, zanim przejdziemy do następnego poziomu. Drzewo przyjmuje zatem postać następującego drzewa:
O
|1
|
O------+-----O
|2 |3
| |
O---+---O O---+----O
|4 |5 6 7
| |
O---+--O O
8 9 10
Zacznijmy od konkretnego przypadku, n =2)m- 1.
Wiemy to,
2)0+2)1+2)2)+ . . . +2)m - 1=2)m- 1
Łatwo też udowodnić, że poziom ja może mieć co najwyżej 2)ja węzły w nim.
Używając tego wyniku w powyższej sumie, znajdujemy to dla każdego poziomu ja, od 0 do mistnieje odpowiedni termin 2)i - 1 w rozszerzeniu 2)m- 1. Oznacza to, że kompletne drzewo binarne2)m- 1 węzły są całkowicie wypełnione i mają wysokość, h (2)m- 1 ) = m - 1, gdzie h ( n ) = wysokość pełnego drzewa binarnego z n węzły
Korzystając z tego wyniku, h (2)m) = m, ponieważ drzewo z 2)m- 1 węzły są całkowicie wypełnione, a tym samym drzewo (2)m- 1 ) + 1 =2)m węzły muszą pomieścić dodatkowy węzeł na następnym poziomie m, zwiększając wysokość o 1 od m - 1 do m.
Do tej pory udowodniliśmy,
h (2)m) = m ,
h (2)m + 1) = m + 1
jak również,
h (2)m + 1- 1 ) = m
A zatem, ∀ n ∈ Z ,2)m≤ n <2)m + 1
m ≤ h ( n ) < m + 1
Ale biorąc dziennik (podstawa 2) po obu stronach,
m ≤log2)( n ) < m + 1
m = ⌊log2)( n ) ⌋
A zatem, ∀ n , n ∈ [2)m,2)m + 1)
h ( n ) = m = ⌊log2)( n ) ⌋
I możemy uogólnić ten wynik ∀ n ∈ Z za pomocą indukcji.
PS: Książka określająca wysokość pełnego drzewa binarnego jako log2)( n + 1 ) - 1 nie jest ważne dla wszystkich n ponieważ log2)( n ) dałoby wartości niecałkowite dla większości liczb całkowitych n (tj. dla wszystkich oprócz doskonałych drzew podwójnych), ale wysokość drzewa jest całkowicie integralna.