Aufgabe: Schreiben Sie eine Methode mit iterativer und rekursiver Berechnung der Fibonacci-Folge.
Könnt ihr mir sagen, ob es so stimmt?
Vielen Dank im Vorraus!
Rekursiv:
int fibo(int i){
if(i == 0) return 0;
if(i == 1) return 1;
return fibo(i - 1) + fibo(i - 2);
}
Iterativ:
int fibo(int n){
int a=0;
int b=1;
int c=1;
for(int i = 0; i < n; i++){
a=b+c;
c=b;
b=a;
}
return a;
}
oder das (iterativ):
int fibo(int n) {
int[] f = new int[n+1];
f[0] = 0;
f[1] = 1;
for(int i=2; i<=n; ++i)
f = f[i-1] + f[i-2];
return f[n];
}
Könnt ihr mir sagen, ob es so stimmt?
Vielen Dank im Vorraus!
Rekursiv:
int fibo(int i){
if(i == 0) return 0;
if(i == 1) return 1;
return fibo(i - 1) + fibo(i - 2);
}
Iterativ:
int fibo(int n){
int a=0;
int b=1;
int c=1;
for(int i = 0; i < n; i++){
a=b+c;
c=b;
b=a;
}
return a;
}
oder das (iterativ):
int fibo(int n) {
int[] f = new int[n+1];
f[0] = 0;
f[1] = 1;
for(int i=2; i<=n; ++i)
f = f[i-1] + f[i-2];
return f[n];
}
Zuletzt bearbeitet: