斐波那契数列是一个经典的递归数列,其定义如下:
F(0) = 0
F(1) = 1
F(n) = F(n-1) + F(n-2),其中n >= 2
即斐波那契数列的第n项等于前两项之和。下面是用Java实现斐波那契数列的代码,附有注释和详细解释。
public class Fibonacci {
public static void main(String[] args) {
int n = 10; // 求斐波那契数列的前n项
for (int i = 0; i < n; i++) {
System.out.print(fibonacci(i) + " ");
}
}
/**
* 递归实现斐波那契数列
* @param n 斐波那契数列的第n项
* @return 斐波那契数列的第n项的值
*/
public static int fibonacci(int n) {
if (n == 0) {
return 0;
} else if (n == 1) {
return 1;
} else {
return fibonacci(n - 1) + fibonacci(n - 2);
}
}
}
代码中,fibonacci方法用递归的方式实现了斐波那契数列。当n等于0时,返回0;当n等于1时,返回1;否则,返回前两项之和。在main方法中,我们可以调用fibonacci方法来输出斐波那契数列的前n项。
需要注意的是,递归实现的斐波那契数列具有指数级别的时间复杂度,随着n的增大,运行时间会呈指数级别增长,因此,当n比较大时,递归实现的效率会非常低。