Salve a tutti, ho un problema con l'esercizio 5 ma nello zip dell'esame non ci sono le soluzioni quindi chiedo un parere qui.
Questo è lo zip:
https://q2a.di.uniroma1.it/assets/fondamenti-19-20/esame-29-1-20.zip?v=0
Tralasciando lo scopo dell'esercizio vorrei capire come risolvere questo sottoproblema: devo eliminare le foglie di un albero e restituire la somma delle foglie eliminate. Quello che faccio è :
se il nodo r non ha figli aggiungo l'id di r a un variabile,
faccio un ciclo for in cui scorro i figli di r,
se il figlio corrente non ha figli aggiungo il suo id alla variabile e lo rimuovo dalla lista dei figli di r,
faccio la chiamata ricorsiva sul figlio corrente,
fuori dal for ritorno la variabile.
Facendo così riesco a cancellare molte foglie, ma non tutte. Avete qualche suggerimento da darmi? Grazie.
Questo è lo zip:
https://q2a.di.uniroma1.it/assets/fondamenti-19-20/esame-29-1-20.zip?v=0
Tralasciando lo scopo dell'esercizio vorrei capire come risolvere questo sottoproblema: devo eliminare le foglie di un albero e restituire la somma delle foglie eliminate. Quello che faccio è :
se il nodo r non ha figli aggiungo l'id di r a un variabile,
faccio un ciclo for in cui scorro i figli di r,
se il figlio corrente non ha figli aggiungo il suo id alla variabile e lo rimuovo dalla lista dei figli di r,
faccio la chiamata ricorsiva sul figlio corrente,
fuori dal for ritorno la variabile.
Facendo così riesco a cancellare molte foglie, ma non tutte. Avete qualche suggerimento da darmi? Grazie.