<aside> ℹ️

Un albero è bilanciato in altezza se le altezze dei sottoalberi sinistro e destro di ogni suo nodo differiscono al più di uno

</aside>

<aside> ℹ️

Il fattore di bilanciamento $\beta(v)$ di un nodo $v$ è la differenza tra l’altezza del suo sottoalbero sinistro e quella del suo sottoalbero destro

$$ \beta (v)=altezza[left[v]]-altezza[right[v]] $$

</aside>

Il fattore di bilanciamento è tanto migliore quanto più piccolo è il suo valore assoluto

<aside> ℹ️

Un albero è bilanciato in altezza se, per ogni nodo $v$, $|\beta(v)|\le 1$

</aside>

Altezza → $h=\Theta(log_2n)$

image.png


Rotazioni

Gli alberi binari consentono la ricerca di un dato elemento in un tempo logaritmico

<aside> ⚠️

Problema: l’inserimento o la cancellazione di un nodo potrebbero far perdere il bilanciamento di un albero AVL

</aside>

Il bilanciamento deve essere ripristinato attraverso delle opportune operazioni sui nodi: rotazioni