Cây AVL không cân bằng trọng lượng?


22

Trong một câu hỏi trước đây có một định nghĩa về cây cân bằng trọng lượng và một câu hỏi liên quan đến cây đỏ đen.

Câu hỏi này là để hỏi cùng một câu hỏi, nhưng đối với cây AVL .

Câu hỏi là, đưa ra định nghĩa về cây cân bằng như trong câu hỏi khác,μ

Có một số sao cho tất cả đủ cây AVL lớn đang -balanced?μμ>0μ

Tôi đoán rằng chỉ có một định nghĩa về cây AVL và không có sự mơ hồ.

Câu trả lời:


18

Yêu cầu : Không, không có .μ

Bằng chứng : Chúng tôi đưa ra một chuỗi vô hạn các cây AVL có kích thước đang phát triển có giá trị cân bằng trọng lượng có xu hướng bằng , trái ngược với yêu cầu.0

Đặt là cây hoàn chỉnh có chiều cao ; nó có nút. h 2 h + 1 - 1Chh2h+1-1

Hãy các cây Fibonacci chiều cao ; nó có nút. [ 1 , 2 , TAoCP 3 ]ShF h + 2 - 1hFh+2-1

Bây giờ hãy để với chuỗi cây mà chúng ta tuyên bố là ví dụ ngược lại. T h = N ( S h , C h )(Th)tôi1Th= =N(Sh,Ch)

Hãy xem xét giá trị cân bằng trọng lượng của gốc đối với một số : h N +ThhN+

Fh+22h+1+Fh+2-1= =11+2h+1Fh+2-1Fh+2~Fh+22h+1= =15(φh+2-φ^h+2)2h+1~φh+252h+1h0

Điều này kết luận bằng chứng.

Ký hiệu :

  • Fnsố Fibonacci thứn
  • φ- 0,62φ1.6Tỷ lệ vàng , liên hợp của nó.φ^-0,62
  • f g lim n f ( n )f~g có nghĩa là và không bằng nhau, tức là .fglimnf(n)g(n)= =1

Ghi chú : Các cây Fibonacci chính xác là những cây AVL có ít nút nhất cho một chiều cao nhất định (hoặc tương đương, chiều cao tối đa cho một số nút nhất định).

Phụ lục : Làm thế nào chúng ta có thể đến với các cây Fibonacci nếu chúng ta không tình cờ nghe thấy một giáo sư đề cập đến chúng? Chà, một cây AVL có chiều cao với càng ít nút càng tốt? Chắc chắn, bạn cần một cái gốc. Một trong những cây con cần có chiều cao và chúng ta phải chọn nó với càng ít nút càng tốt. Một cái khác có thể có chiều cao mà không vi phạm điều kiện cân bằng chiều cao và chúng tôi cũng chọn nó với càng ít nút càng tốt. Về bản chất, chúng tôi xây dựng các cây mà chúng tôi muốn đệ quy! Đây là bốn cái đầu tiên:h - 1 h - 2hh-1h-2

Bốn cây Fibonacci đầu tiên
[ nguồn ]

Chúng tôi thiết lập một lần lặp lại cho số nút trong cây được xây dựng như vậy với chiều cao :hf(h)h

f(1)= =1f(2)= =2f(h)= =f(h-1)+f(h-2)+1n3

Việc giải quyết nó dẫn đến mà chúng tôi đã sử dụng ở trên.f(h)= =Fh+2-1


Bằng chứng tương tự được đưa ra (với ít chi tiết hơn) trong các cây tìm kiếm nhị phân có giới hạn cân bằng của Nievergelt và Reingold (1972).

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.