public static int fibonacci(int n) {
if (n < 1) {
return 0;
}
if( n == 1 || n == 2) {
return 1;
}
int result = 1;
int preResult = 1; // n - 2项
int currentResult = 1; // n - 1项
for (int i = 3; i <= n; i++) {
result = preResult + currentResult; // n = f(n-1) + f(n-2)
preResult = currentResult; // f(n-2) = f(n-1)
currentResult = result; // f(n-1) = n
}
return result;
}
}
斐波那契数列非递归解法
最新推荐文章于 2024-03-26 11:45:56 发布