Salve a tutti,
avrei un piccolo problema riguardo agli alberi binari, in internet o sulle slide delle lezioni riesco a trovare la visita per livelli (detta anche in ampiezza) solo in maniera iterativa, mentre io avrei bisogno di quella ricorsiva.
Non essendo molto bravo con le funzioni ricorsive sapreste aiutarmi voi a convertirla?
codice:
PROCEDURE visita_livello (T albero)
coda c, tipolelema ,nodo u
u <- binradice(T)
creacoda(C)
incoda(u,C)
WHILE (codavuota(C) = FALSE) DO
u <- leggicoda(C)
fuoricoda(C)
a<- legginodo(u,T)
SCRIVI (a)
IF (sinistrovuoto(u,T) = FALSE)THEN
incoda(figliosinistro(u,T))
IF (destrovuoto(u,T) = FALSE)THEN
incoda(figliodestro(u,T))
Sostanzialmente nella versione iterativa utilizza una coda di appoccio di cui nella versione ricorsiva immagino non ne avremo bisogno, ma ripeto non riesco a convertirla da solo.
Vi ringrazio,
Neptune.