public
class Fibonacci {
public
static
void main(String[] args) {
System.out.println(fibonacci(9));
System.out.println(noRecursionFibonacci(9));
}
//遞歸求fibonacci的值
public
static
int fibonacci(
int n){
if(n==1||n==2){
return 1;
}
else{
return fibonacci(n-1)+fibonacci(n-2);
}
}
//非遞歸求fibonacci的值(迭代)
public
static
int noRecursionFibonacci(
int n){
if(n==1||n==2){
return 1;
}
int f1 = 1;
int f2 = 1;
int f3 = 1;
for(
int i=0;i<n-2;i++){
f3 = f2+f1;
f1=f2;
f2=f3;
}
return f3; } }