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),但是由于遞歸的開銷較大,在計算大的斐波那契數列時費羅切算法會比米蘭算法慢。因此在實際使用時,應該根據具體情況選擇使用哪種算法。