Sobes.tech
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.