📅  最后修改于: 2023-12-03 14:55:03.357000             🧑  作者: Mango
斐波那契数列是指从 0 和 1 开始,后面的每一项都是前面两项的和。这个数列的前几项是:0、1、1、2、3、5、8、13、21、34、55、89、144……等等。在这个数列中,后一项除以前一项的比值越来越接近0.618。0.618又被称为黄金分割比。
斐波那契数列在计算机科学中有广泛的应用,比如搜索算法、数据压缩、密码学、图形优化等等。
这篇文章主要介绍如何用 Java 实现斐波那契数列。
我们可以使用递归或循环来实现斐波那契数列。
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);
}
}
这里使用了递归来实现斐波那契数列。时间复杂度是 O(2^n),因为递归过程中会重复计算相同的值。
public static int fibonacci(int n) {
if (n <= 0) {
return 0;
}
int previous = 0;
int current = 1;
for (int i = 1; i < n; i++) {
int next = previous + current;
previous = current;
current = next;
}
return current;
}
这里使用了循环来实现斐波那契数列。时间复杂度是 O(n),因为只需要计算一次每个数的值。
Java 可以用递归或循环来实现斐波那契数列。但是递归实现在计算量大的情况下会存在性能问题,建议使用循环实现。