Una funzione che si chiama è nota come funzione ricorsiva. E, questa tecnica è conosciuta come ricorsione.

Come funziona la ricorsione?

void recurse(){ ... .. ... recurse(); ... .. ...}int main(){ ... .. ... recurse(); ... .. ...}

La ricorsione continua fino a quando una condizione è soddisfatta per impedirlo.

Per prevenire la ricorsione infinita, se…l’istruzione else (o un approccio simile) può essere utilizzata dove un ramo effettua la chiamata ricorsiva e altri no.,

Esempio: Somma di numeri naturali usando la ricorsione

Output

Enter a positive integer:3sum = 6

Inizialmente, la funzionesum() viene chiamata dalla funzionemain() con il numero passato come argomento.

Supponiamo che il valore di n all’interno di sum() sia inizialmente 3. Durante la chiamata di funzione successiva, 2 viene passato alla funzionesum(). Questo processo continua fino a quando n è uguale a 0.,

Quando n è uguale a 0, la condizione if fallisce e la parte else viene eseguita restituendo la somma di interi alla funzione main().

Vantaggi e svantaggi della ricorsione

La ricorsione rende il programma elegante. Tuttavia, se le prestazioni sono vitali, utilizzare invece i loop poiché la ricorsione è solitamente molto più lenta.

Detto questo, la ricorsione è un concetto importante. Viene spesso utilizzato nella struttura dei dati e negli algoritmi., Ad esempio, è comune utilizzare la ricorsione in problemi come l’attraversamento degli alberi.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *