Differenza tra albero binario completo e albero binario completo

Differenza tra albero binario completo e albero binario completo
Differenza tra albero binario completo e albero binario completo

Video: Differenza tra albero binario completo e albero binario completo

Video: Differenza tra albero binario completo e albero binario completo
Video: Veda: La Conoscenza Perfetta - Valentino Bellucci 2024, Novembre
Anonim

Albero binario completo contro albero binario completo

L'albero binario è un albero in cui ogni nodo ha uno o due figli. In un albero binario, un nodo non può avere più di due figli. In un albero binario, i bambini sono chiamati bambini "sinistra" e "destra". I nodi figlio contengono un riferimento al loro genitore. Un albero binario completo è un albero binario in cui ogni livello dell'albero binario è completamente riempito tranne l'ultimo livello. Nel livello non riempito, i nodi sono collegati a partire dalla posizione più a sinistra. Un albero binario completo è un albero in cui ogni nodo dell'albero ha due figli tranne le foglie dell'albero.

Cos'è l'albero binario completo?

L'albero binario completo è un albero binario in cui ogni nodo dell'albero ha esattamente zero o due figli. In altre parole, ogni nodo nell'albero tranne le foglie ha esattamente due figli. La figura 1 di seguito mostra un albero binario completo. In un albero binario completo, il numero di nodi (n), il numero di laves (l) e il numero di nodi interni (i) è correlato in modo speciale in modo tale che se ne conosci uno puoi determinare gli altri due valori come segue:

1. Se un albero binario completo ha i nodi interni:

– Numero di foglie l=i+1

– Numero totale di nodi n=2i+1

2. Se un albero binario completo ha n nodi:

– Numero di nodi interni i=(n-1)/2

– Numero di foglie l=(n+1)/2

3. Se un albero binario completo ha l foglie:

– Numero totale di nodi n=2l-1

– Numero di nodi interni i=l-1

Immagine
Immagine
Immagine
Immagine

Cos'è l'albero binario completo?

Come mostrato nella figura 2, un albero binario completo è un albero binario in cui ogni livello dell'albero è completamente riempito tranne l'ultimo livello. Inoltre, nell'ultimo livello, i nodi dovrebbero essere collegati a partire dalla posizione più a sinistra. Un albero binario completo di altezza h soddisfa le seguenti condizioni:

– Dal nodo radice, il livello sopra l'ultimo livello rappresenta un albero binario completo di altezza h-1

– Uno o più nodi nell'ultimo livello possono avere 0 o 1 figli

– Se a, b sono due nodi nel livello sopra l'ultimo livello, allora a ha più figli di b se e solo se a è situato a sinistra di b

Qual è la differenza tra l'albero binario completo e l'albero binario completo?

Alberi binari completi e alberi binari completi hanno una chiara differenza. Mentre un albero binario completo è un albero binario in cui ogni nodo ha zero o due figli, un albero binario completo è un albero binario in cui ogni livello dell'albero binario è completamente riempito tranne l'ultimo livello. Alcune strutture di dati speciali come gli heap devono essere alberi binari completi mentre non è necessario che siano alberi binari completi. In un albero binario completo, se conosci il numero di nodi totali o il numero di lave o il numero di nodi interni, puoi trovare gli altri due molto facilmente. Ma un albero binario completo non ha una proprietà speciale che mette in relazione questi tre attributi.

Consigliato: