Sobes.tech
Junior — Middle

Magyarázza el, hogyan működik egy függvény saját magának történő hívásának folyamata, és milyen esetekben lehet ez hasznos.

sobes.tech MI

Válasz az MI-től

Egy függvény saját magára való hívását rekursziónak nevezzük. C#-ban ez azt jelenti, hogy a metódus saját magát hívja meg a feladat megoldása érdekében, egyszerűbb alfeladatokra bontva.

A rekurzió akkor hasznos, ha a feladat természetes módon hasonló alfeladatokra oszlik, például fa bejárás, faktoriális számítás, gráfokban való keresés.

Példa a faktoriális számítására rekurrzióval:

int Factorial(int n)
{
    if (n <= 1)
        return 1; // alaphelyzet
    else
        return n * Factorial(n - 1); // rekurzív hívás
}

Fontos, hogy legyen egy alaphelyzet, hogy a rekurszió befejeződjön, különben végtelen hívások és verem túlcsordulás lesz.

A rekurzió egyszerűsíti a kódot és olvashatóbbá teszi ismétlődő szerkezetű feladatok esetén, de néha helyettesíthető iterációval a teljesítmény növelése érdekében.