淘先锋技术网

首页 1 2 3 4 5 6 7

Java 费罗切和米兰是两种不同的算法,它们都可以用来计算斐波那契数列。

费罗切算法是递归算法的一种,代码如下:

public static int fibonacci(int n) {
if (n<= 1) {
return n;
}
return fibonacci(n - 1) + fibonacci(n - 2);
}

米兰算法是一种迭代算法,代码如下:

public static int fibonacci(int n) {
if (n<= 1) {
return n;
}
int fib = 1;
int prevFib = 1;
for (int i = 2; i< n; i++) {
int temp = fib;
fib += prevFib;
prevFib = temp;
}
return fib;
}

这两种算法的时间复杂度都是 O(n),但是由于递归的开销较大,在计算大的斐波那契数列时费罗切算法会比米兰算法慢。因此在实际使用时,应该根据具体情况选择使用哪种算法。