Sobes.tech
Junior

Was ist der Unterschied zwischen der Umsetzung derselben Aufgabe mit Rekursion und Schleife?

sobes.tech KI

Antwort von AI

Rekursion verwendet den Aufruf der eigenen Funktion zur Lösung eines Problems, indem sie es in kleinere Teilaufgaben zerlegt, bis der Basissatz erreicht ist. Währenddessen wiederholt die Schleife einen Codeblock eine bestimmte Anzahl von Malen oder bis eine Bedingung erfüllt ist.

Merkmal Rekursion Schleife
Ausführung Funktionsaufruf Iteration
Speicher Verwendet den Aufrufstapel Verwendet Variablen für Zähler/Bedingung
Lesbarkeit Für manche Aufgaben kürzer möglich Oft direkter
Leistung Kann langsamer sein wegen der Aufwände für Aufrufe Häufig effizienter
Stacküberlauf Risiko bei tiefer Rekursion Kein Risiko eines Stacküberlaufs

Beispiel in C# (Fakultät):

Rekursive Implementierung:

// Rekursive Berechnung der Fakultät
int FactorialRecursive(int n)
{
    if (n == 0)
    {
        return 1; // Basisfall
    }
    return n * FactorialRecursive(n - 1); // Rekursiver Aufruf
}

Implementierung mit Schleife:

// Fakultätsberechnung mit Schleife
int FactorialIterative(int n)
{
    int result = 1;
    for (int i = 1; i <= n; i++)
    {
        result *= i;
    }
    return result;
}