Albero binario: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
Nessun oggetto della modifica |
Ft1 (discussione | contributi) m formattazione, interwiki |
||
Riga 1:
Un albero binario è una [[struttura dati]] formata da nodi collegati tra loro da archi.
Ogni nodo è strutturato in modo particolarmente semplice, ovvero una chiave, il
Ecco quali sono le caratteristiche che denotano un albero binario, premettendo che se anche uno solo di questi parametri è trascurato allora
I vantaggi di questa implementazione non sono subito evidenti, si accetti come postulato che la visita di una lista implementata con un albero binario è molto efficiente.
Riga 13:
In questa sezione trattiamo l'implementazione degli alberi binari dal punto di vista teorico, facendo ricordo a strutture di programmazione generiche, sarà poi compito del [[programmatore]] decidere come implementare queste strutture sulla base del [[linguaggio di programmazione]] che si troverà ad usare.
Esistono vari sistemi, ma il più semplice risulta essere quello che utilizza un array che contiene i nodi
Si fa notare che questa implementazione è ottimale se
[[Immagine:Mg744Albero1.PNG|center|200px]]
Interpretiamola: in A, posizione 1,
I vantaggi
Un'altra implementazione che prevede
[[Immagine:Mg744Albero2.PNG|center|200px|]]
<div style="text-align:center;">'''Inizio = 1'''</div>
Riga 30:
Iniziando da 1 , A ha figli che sono in 2 e 3 , il figlio B non ha discendenti, quello C invece ha come discendenti 6 a sinistra e 7 a destra, cioè D ed E.
Lo stesso di può ottener prendendo in considerazione anziché un [[array]], un semplice nodo strutturato a tre campi, etichetta, figlio sinistro, figlio destro e con un puntatore al primo nodo, e di fatto ci ricolleghiamo
Per quanto riguarda
<div style="text-align:center;">'''''N=lunghezza del più lungo cammino + 1'''''</div>
Dove come cammino si intende il percorso misurato in nodi attraversati per raggiungere una posizione a partire dalla radice. <br/>Nel caso
▲Dove come cammino si intende il percorso misurato in nodi attraversati per raggiungere una posizione a partire dalla radice. <br/>Nel caso dell’albero nella figura qui sopra, l’altezza è 1+2 cioè 3.
Esistono alcune formule per calcolare le caratteristiche degli alberi:
<table><tr><td>
'''Log2(n+1)
<tr><td>'''2h-1'''</td><td> Numero massimo di nodi in un albero binario di altezza h<br/></td></tr>
<tr><td>'''h'''</td><td>Altezza o numero minimo di nodi di un albero con altezza h<br/></td></tr>
Riga 46 ⟶ 45:
[[Categoria:Strutture dati]]
[[da:binært søgetræ]]
[[de:Binärbaum]]
[[en:Binary tree]]
[[es:Árbol binario]]
[[fr:Arbre binaire]]
[[he:עץ בינארי]]
[[ko:이진_트리]]
[[pl:Drzewo binarne]]
[[sl:dvojiško drevo]]
[[fi:Binääripuu]]
[[sv:Binärträd]]
[[uk:Бінарне дерево]]
[[zh:二叉树]]
|