Spiegare a parole proprie la nozione di ricorsione confrontandola con quella di iterazione
Per ripetere una serie di istruzioni che però operano su valori diversi, si può scegliere la strada iterativa o la strada ricorsiva.
Ricorsione: crea un loop richiamando se stessa più volte , per uscire dal loop tra le istruzioni ci dovrà essere un base case che detta le condizioni in base alle quali non viene più chiamata la funzione ma si esce.
Iterazione: prevede all’interno della funzione l’uso di una singola struttura di loop contenente le istruzioni considerate.
L’esempio più semplice ed utilizzato per evidenziare le differenze tra questi due concetti è dato dalla funzione per il calcolo del fattoriale.
metodo iterativoFunction fattorialeIterativo(N As Integer) Dim prodotto As Integer = 1 For i = 2 To N prodotto = prodotto * i Next Return ProdottoEnd Functionmetodo ricorsivoFunction fattorialeRicorsivo(N As Integer) 'base case If N = 1 Then Return 1 'RECURSIVE CASE Return N*fattoriale(N-1)End Function |
Commenti
Posta un commento