Albero binario: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Morry39 (discussione | contributi)
Fix codice: ora è più chiaro
m Fix link
Riga 1:
{{F|informatica|ottobre 2015|}}
In [[informatica]] un '''albero binario''' è un [[albero (grafo)|albero]] i cui [[Nodo (grafi)|nodi]] hanno [[Grado (matematica)|grado]] compreso tra 0 e 2; per ''albero'' si intende un [[grafo]] non diretto, connesso e aciclico.
 
Anche l'albero costituito da un solo nodo e nessun [[arco (teoria dei grafi)|arco]] si considera un albero binario valido, sebbene il grado del nodo in questo caso sia nullo.
Riga 13:
Esistono vari sistemi, ma il più semplice risulta essere quello che utilizza un [[array]] che contiene i nodi dell'albero secondo questa logica: la radice occupa la prima posizione dell'array e i figli di questa radice sono a loro volta nell'array e occupano come posizione (2i) e (2i+1) dove i è la posizione della radice, del padre, dei due figli.
 
Si fa notare che questa implementazione è ottimale se l'albero è completo cioè se tutti gli elementi che costituiscono l'albero hanno esattamente due figli, tranne ovviamente le foglie, altrimenti è necessario un flag [[Variabile booleana|booleano]], in realtà un array di accompagnamento, che ci indica se la posizione è valida o meno.
[[File:Mg744Albero1.PNG|center|200px]]