Định nghĩa :
Một cây nhị phân tìm kiếm cân bằng ( AVL Trees ) bao gồm những yếu tố :
=> Với cây AVL có n nút, chiều cao là : h 1.44log n
=> Chiều cao tệ nhất của cây AVL với n nút là h 1.44log n
[Ðọc chi tiết...]
Một cây nhị phân tìm kiếm cân bằng ( AVL Trees ) bao gồm những yếu tố :
- Chiều cao cây con trái và cây con phải của gốc cây cha phải chênh lệch nhau không quá 1
- Bản thân cây con trái và cây con phải cũng là cây AVL
Cây AVL với chiều cao h :
Chiều cao lớn nhất của cây nhị phân AVL :
Chiều cao lớn nhất của cây AVL có chính xác là n nút ? Để trả lời câu hỏi này, ta hãy xem xét bên dưới.
Gọi Fh là cây nhị phân AVL có chiều cao là h có số nút ít nhất, Fl, Fr lần lượt là cây con trái và phải tương ứng của cây Fh, khi đó Fl hoặc Fr phải có chiều cao là h-2/
Giả sử cây Fl có chiều cao h-1, và Fr có chiều cao là h-2. Lưu ý Fl là cây AVL có số nút ít nhất trong số các cây AVL có chiều cao h-1, tương tự thì Fr có số nút nhỏ nhất trong số các cây AVL có chiều cao h-2. Như vậy ta có:
| Fh| = | Fh - 1| + | Fh
- 2| + 1
trong đó | Fh| biểu thị số nút của Fh, cây AVL cực tiểu còn gọi là là cây Fibonacci, | F0|
= 1 và | F1|
=2 . Thêm 1 vào cả 2 bên ta được :
| Fh| + 1 = (| Fh - 1| + 1)
+ (| Fh - 2| + 1)
như cậy | Fh| + 1 là số Fibonacci, sử dụng công thức gần đúng của số Fibonacci ta sẽ có :
| Fh| + 1
=> h
1.44log| Fn|=> Với cây AVL có n nút, chiều cao là : h 1.44log n
=> Chiều cao tệ nhất của cây AVL với n nút là h 1.44log n