斐波那契数列
斐波那契数列是展示递归和迭代两种编程思想的经典案例。递归实现简洁直观,但可能存在效率问题;迭代实现则更高效,适合处理大规模数据。应用代码中的落地场景例如算法、加密、模型计算等。
public class Fibonacci {
public static int fib(int n) {
if (n <= 1) {
return n;
}
return fib(n - 1) + fib(n - 2);
}
public static void main(String[] args) {
int n = 8;
int s = 9;
System.out.println("Fibonacci number at position " + n + " is: " + fib(n));
System.out.println("Fibonacci number at position " + s + " is: " + fib(s));
}
}
手动计算斐波那契数列
F(0)=0
F(1)=1
F(2)=F(1)+F(0)=1+0=1
F(3)=F(2)+F(1)=1+1=2
F(4)=F(3)+F(2)=2+1=3
F(5)=F(4)+F(3)=3+2=5
F(6)=F(5)+F(4)=5+3=8
F(7)=F(6)+F(5)=8+5=13
F(8)=F(7)+F(6)=13+8=21
F(9)=F(8)+F(7)=21+13=34
当你调用 fib(9) 时,按照递归逻辑,会展开为 fib(8) + fib(7)。然后,fib(8) 和 fib(7) 又会各自继续递归展开,直到达到递归终止条件(即 n <= 1)。