PDA

View Full Version : Ricorsione con alberi binari.


cimmiv
07-10-2017, 10:20
Salve ragazzi, sto studiando gli algoritmi su alberi binari.
Mi sono imbattuto in questo esercizio

Dato un albero binario T di n nodi rappresentato mediante puntatori al
figlio sinistro e a quello destro e un intero k, 0 ≤ k ≤ n – 1. Progettare
e descrivere in pseudocodice un algoritmo per risolvere il seguente
problema:
Trovare il numero di nodi di T che hanno altezza k.

ed ho pensato a questa soluzione.

Procedure conta_nondi(T){
cont,h=-1.

if T==NULL then
return 0
else
h++
if(T->val == h)
cont++
return cont
else
return (conta_nod(T->sx)+conta_nodi(T->dx))
end if

}

Ho ancora dei dubbi circa la ricorsione.
La ricorsione la devo richiamare come ulteriore else del caso base (come ho fatto ) oppure quando vado a verificare se il valore del nodo è uguale all'altezza h in cui si trova?

Vi ringrazio in anticipo per la disponbilità