Menu
Coddy logo textTech

Introduzione alla ricorsione

Fa parte della sezione Logica e flusso del percorso Dart di Coddy. Lezione 47 di 65.

La ricorsione è una tecnica di programmazione in cui una funzione chiama sé stessa per risolvere un problema. Immagina di guardare in due specchi uno di fronte all'altro: ogni riflesso contiene una versione più piccola della stessa immagine, creando un ciclo infinito finché i riflessi non diventano troppo piccoli per essere visti.

Ogni funzione ricorsiva ha bisogno di due componenti essenziali per funzionare correttamente. Il caso base è la condizione che ferma la ricorsione: è come il punto in cui i riflessi nello specchio diventano troppo piccoli per essere rilevanti. Senza un caso base, la tua funzione chiamerebbe sé stessa all’infinito, mandando infine in crash il tuo programma.

Il passo ricorsivo è il punto in cui la funzione richiama sé stessa con una versione modificata del problema originale. Ogni volta che la funzione richiama sé stessa, dovrebbe lavorare su una versione più piccola o più semplice del problema, avvicinandosi gradualmente al caso base.

Immagina di cercare le chiavi in una pila di fogli. Potresti controllare il foglio in cima e, se le chiavi non sono lì, faresti la stessa cosa con la pila rimanente (che ora ha un foglio in meno). Continueresti a ripetere questo processo finché non trovi le chiavi oppure non ci sono più fogli da controllare.

Questo approccio, che consiste nel scomporre un problema grande in problemi più piccoli e identici, è ciò che rende la ricorsione così potente per certi tipi di sfide di programmazione.

Provalo tu

Questa lezione non include una sfida di codice.

quiz iconMettiti alla prova

Questa lezione include un breve quiz. Inizia la lezione per rispondere e tenere traccia dei tuoi progressi.

Tutte le lezioni di Logica e flusso

Esercitati da solo: Compilatore Dart online