Reclamo : No, non esiste tale μ .
Prova : diamo una sequenza infinita di alberi AVL di dimensioni crescenti il cui valore di bilanciamento del peso tende a 0 , contraddicendo l'affermazione.
Lascia che Ch l'albero completo di altezza h ; ha 2h+1−1 nodi.
Sia Sh l' albero di Fibonacci di altezza h ; ha nodi Fh+2−1 . [ 1 , 2 , TAoCP 3 ]
Ora lascia (Th)i≥1 con Th=N(Sh,Ch) la sequenza di alberi che sosteniamo essere un contro esempio.
Considera il valore di bilanciamento del peso della radice di Th per qualche h∈N+ :
Fh+22h+1+Fh+2−1=11+2h+1Fh+2−1Fh+2∼Fh+22h+1=15√(ϕh+2−ϕ^h+2)2h+1∼ϕh+25–√⋅2h+1→h→∞0
Questo conclude la prova.
Notazione :
- Fnn
- ϕ≈1.6ϕ^≈−0.62
- f∼gfglimn→∞f(n)g(n)=1
Nota bene : gli alberi Fibonacci sono esattamente quegli alberi AVL con il minor numero di nodi per una determinata altezza (o, equivalentemente, l'altezza massima per un dato numero di nodi).
Addendum : Come possiamo inventare alberi di Fibonacci se non avessimo sentito un professore menzionarli? Bene, come sarebbe un albero AVL di altezza con il minor numero di nodi possibile? Certamente, hai bisogno di una radice. Uno dei sottotitoli deve avere altezza e dobbiamo sceglierlo con il minor numero di nodi possibile. L'altro può avere altezza senza violare la condizione di bilanciamento dell'altezza e lo scegliamo anche con il minor numero di nodi possibile. In sostanza, costruiamo gli alberi che vogliamo ricorsivamente! Questi sono i primi quattro:hh−1h−2
[ fonte ]
Abbiamo impostato una ricorrenza per il numero di nodi nell'albero così costruito con altezza :f(h)h
f(1)f(2)f(h)=1=2=f(h−1)+f(h−2)+1n≥3
Risolvendolo si ottiene che abbiamo usato sopra.f(h)=Fh+2−1
La stessa prova è data (con meno dettagli) negli alberi di ricerca binaria di equilibrio limitato da Nievergelt e Reingold (1972).