Iterativ und Rekursiv



  • Okay, ich lerne gerade etwas über die Iteration und die Rekursion.
    Aber so ganz verstanden habe ich es nicht und das Tutorial erklärt es für mich nicht verständlich, wie so viele andere Tutorials auch nicht.

    Meine eigentliche Frage ist jetzt:
    Was ist die Iteration und die Rekursion und was bewirken sie???

    Liebe Grüße und thx im voraus

    PS: Wäre gail, wenn mir jemand ein kleines Beispiel geben könnte.
    Muss nicht lang sein, nur dass das die grundlegenden Funktionen erklärt !
    Vielen Dank



  • Iterativ:

    int fakultaet(int n)
    {
       int ret = 1;
    
       for (int i = 2; i <= n ; ++i)
          ret *= i;
    
       return ret;
    }
    

    Rekursiv:

    int fakultaet(int n)
    {
       if (n == 1)
          return 1;
    
       return n * fakultaet(n-1);
    }
    

    Unterschied sollte klar werden


  • Mod

    • Iteration ist, wenn etwas immer wieder ausgeführt wird, weil es mehrmals nacheinander vorkommt.
    • Rekursion ist, wenn etwas immer wieder ausgeführt wird, weil es sich selber ausführt.
    • Bei der Iteration werden die mehrmals ausgeführten Teile immer als ganzes nacheinander ausgeführt.
    • Bei der Rekursion kann sich die Ausführung der Teile verschachteln.
    • Definition von Rekursion: Siehe Definition von Rekursion
    • Iterationen kann man immer auch als Rekursion umschreiben, umgekehrt aber nicht unbedingt.

    Beispiele? Guck mal bei Google. Da findest du Beispiele für Rekursion. Beispiele für Iterationen: Jede Schleife.



  • Florian S. schrieb:

    Meine eigentliche Frage ist jetzt:
    Was ist die Iteration und die Rekursion und was bewirken sie???

    "Rekursieren" heisst "zurückkehren". Das sind alle Konzepte, deren Beschreibung auf das Konzept selbst zurückgreift. ZB Funktionen, die sich selbst aufrufen (Fakultät); Datenstrukturen, die sich selbst enthalten (Verzeichnisse), usw.

    "Iterieren" heisst "einen Weg entlang gehen". So heissen Algorithmen, die etwas wiederholt tun, bis irgenein Ziel erreicht ist.

    Nur nicht der verschrobenen Idee verfallen, dass das Gegensätze sind!
    🙂



  • Aber so ganz verstanden habe ich es nicht und das Tutorial erklärt es für mich nicht verständlich, wie so viele andere Tutorials auch nicht.

    Du koenntest zumindestens einen Link angeben, damit wir die Worte des Tutorials nicht wiederholen. Auch finde ich es besser, wenn du konkrete Fragen stellst, vorkauen ist ekelhaft.

    google.de: recursion -> did you mean: recursion 😃



  • mngbd schrieb:

    "Iterieren" heisst "einen Weg entlang gehen".

    Ungenau. Das Wörterbuch kennt iter (Weg, Reise) -> iterum (wieder, abermals) -> iteratio (Wiederholung).
    🙂



  • Vielen Dank fürs Zügige Beantworten ! 👍

    Liebe Grüße Flo


Anmelden zum Antworten