Junior — Middle
Spiega come funziona il processo di chiamata di una funzione a se stessa e in quali casi può essere utile.
sobes.tech AI
Risposta dell'AI
La chiamata di una funzione dentro se stessa si chiama ricorsione. In C#, ciò significa che il metodo si chiama da solo per risolvere un compito, suddividendolo in sotto-compiti più semplici.
La ricorsione è utile quando il compito si divide naturalmente in compiti simili, ad esempio, attraversare un albero, calcolare il fattoriale, cercare nei grafi.
Esempio di calcolo del fattoriale usando la ricorsione:
int Factorial(int n)
{
if (n <= 1)
return 1; // caso base
else
return n * Factorial(n - 1); // chiamata ricorsiva
}
È importante avere un caso base affinché la ricorsione termini, altrimenti ci saranno chiamate infinite e overflow dello stack.
La ricorsione semplifica il codice e lo rende più leggibile per compiti con struttura ripetitiva, ma a volte può essere sostituita da iterazione per migliorare le prestazioni.