Auf Thema antworten

Die naive rekursive Definition ist in diesem Fall einfach die direkte Umsetzung der mathematischen Definition: Für die ersten beiden Folgeglieder sind feste Werte vorgegeben, für alle weiteren Werte muss man zur Berechnung auf das letzte und vorletzte Folgeglied zurückgreifen:


[code=Java]

public static long fib(int n) {

   if(n == 0) {

     return 0;

   } else if (n == 1) {

     return 1;

   } else {

      return fib(n-1) + fib(n-2); //der rekursive Aufruf

   }

}

[/code]


Dich verwirren wahrscheinlich ausgefeiltere Implementierungen, denn die oben genannte ist furchtbar ineffektiv, weil für höhere Folgeglieder enorm viele frühere Glieder mehrfach berechnet werden müssen.



Oben