Informatica · Strutture dati
Rotazioni AVL inserendo dodici chiavi
Partendo da un albero AVL vuoto, inserisci una alla volta, nell'ordine dato, le chiavi: 10, 20, 30, 25, 22, 5, 3, 8, 9, 50, 60, 55.
Regole (AVL standard). L'altezza di un albero vuoto è -1, quella di una foglia è 0. Il fattore di bilanciamento di un nodo è bf = (altezza del sottoalbero sinistro) - (altezza del sottoalbero destro). Ogni chiave viene inserita come in un normale albero binario di ricerca; poi si risale dal nuovo nodo verso la radice e ci si ferma al primo nodo z con bf(z) uguale a +2 oppure -2 (se esiste). Sia y il figlio di z dal lato più alto. Se z e y pendono dallo stesso lato, cioè bf(z) = +2 con bf(y) $\ge 0$ oppure bf(z) = -2 con bf(y) $\le 0$, si esegue una sola rotazione semplice su z; altrimenti si eseguono due rotazioni semplici, la prima su y e la seconda su z (rotazione doppia). Dopo questo ribilanciamento l'inserimento termina: per ogni chiave inserita si ribilancia al più un nodo.
Quante rotazioni semplici vengono eseguite in totale durante i 12 inserimenti? (Una rotazione doppia conta come 2 rotazioni semplici.)
La tua risposta:
La tua risposta
Vanno bene sia 3,14 sia 3.14.