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),但是由于递归的开销较大,在计算大的斐波那契数列时费罗切算法会比米兰算法慢。因此在实际使用时,应该根据具体情况选择使用哪种算法。