Skip to main content

Cos'è un albero binario?

Un albero binario è un tipo di struttura dati utilizzata nella programmazione del computer per archiviare, ordinare e accedere alle informazioni.Gli alberi binari sono la più semplice varietà di alberi, ma sono molto utili e facili da implementare.Una tipica implementazione di un albero binario si basa su un nodo radicale collegato a una serie di nodi che compongono l'albero stesso con variabili di puntatore.Questo tipo di albero deriva il suo nome dal fatto che nessun nodo all'interno dell'albero può avere più di due bambini. Le strutture di dati sull'albero sono disponibili in molte varietà.Sono costituiti da nodi diversi, che sono organizzati in uno schema gerarchico.Un singolo nodo, la radice, è il punto di accesso attraverso il quale è possibile cercare o manipolare l'albero di dati intero.Questo nodo radice punta al nodo superiore all'interno dell'albero stesso.

Qualsiasi nodo all'interno di un albero, salvo il nodo più in alto, avrà un nodo genitore che si trova sopra di esso nella gerarchia dell'albero.Può anche avere nodi figlio, che si trovano sotto di esso.Si accede a un determinato nodo tramite quelli sopra nell'albero e fornisce l'accesso a quelli sottostanti.

Le strutture di dati sull'albero binario consentono a ciascun nodo di non avere più di due bambini.Un dato nodo può quindi avere zero, uno o due nodi per bambini attaccati ad esso.Gli alberi binari ordinari consentono ai nodi con qualsiasi numero di bambini in qualsiasi momento dell'albero.Inoltre, non pongono restrizioni su come sono disposti i valori memorizzati nei nodi che comprendono un albero.

Le strutture di dati sono più utili quando migliorano la velocità con cui è possibile accedere ai dati da un computer e vengono utilizzate le versioni modificate di alberi binarimigliorare la loro efficienza.Un albero di ricerca binario è uno in cui tutti i valori di dati situati sul ramo discendente sinistro da un determinato nodo hanno valori uguali o inferiori al valore memorizzato in quel nodo.I valori sul lato destro di un nodo in un albero binario ordinato devono, a sua volta, essere maggiori del valore nel nodo di base.Questo ordinamento dei dati consente di scrivere un algoritmo di ricerca molto più efficiente.

La forma di un albero binario è anche importante per determinare l'efficienza di un algoritmo di ricerca.La varietà meno efficiente di un albero binario è quella in cui ogni nodo ha un solo bambino.Potrebbe essere necessario esaminare un computer ogni elemento di dati nell'intero albero per individuare una singola informazione in questa configurazione.L'albero binario più efficiente, al contrario, è quello in cui ogni nodo salva per quelli nella parte inferiore dell'albero ha due bambini e in cui tutti i nodi fogliare, i nodi inferiori nell'albero, hanno la stessa distanza dalla radice.