📜  用黄金比例推导斐波那契数的表达(1)

📅  最后修改于: 2023-12-03 15:11:19.875000             🧑  作者: Mango

用黄金比例推导斐波那契数的表达

介绍

斐波那契数列是指前两个数等于1,从第三个数开始每个数的值为前两个数之和的数列,常用的表达式为:$F_n=F_{n-1}+F_{n-2}$。

黄金比例又称黄金分割,是一种重要的数字比例关系,记作$\phi$,其值约为1.6180339887。在艺术、建筑、金融、生物学等领域都有应用。黄金比例有一个十分神奇的性质:$\frac{1}{\phi}=\phi-1$。通过这个性质,我们可以推导出斐波那契数的表达式。

推导

首先,我们将斐波那契数列的第$n$项表示为$F_n$。接着,我们可以假设存在一个常数$k$,使得$F_n=k\phi^n$。将$n=1$和$n=2$代入上式,可以得到:

$$ F_1=k\phi^1=k, F_2=k\phi^2 $$

根据斐波那契数列的定义,$F_1=F_2=1$,所以有$k=\frac{1}{\phi-1}$。将$k$的值带入$F_n=k\phi^n$中,可以得到:

$$ F_n=\frac{1}{\phi-1}\phi^n-\frac{1}{1-\phi}\phi^{-n} $$

进一步化简上式,可以得到:

$$ F_n=\frac{\phi^n}{\sqrt{5}}-\frac{(1-\phi)^n}{\sqrt{5}} $$

实现
import math

def fib(n):
    phi = (1 + math.sqrt(5)) / 2
    return round(math.pow(phi, n) / math.sqrt(5)) 

# 测试
print([fib(i) for i in range(10)]) # 输出前10项斐波那契数列
总结

通过黄金比例的性质,我们可以得到斐波那契数的表达式,也可以用代码实现斐波那契数列的求值。斐波那契数列有很多应用,在算法、密码学等领域都有广泛的应用。而黄金比例也是一个非常有趣、奇妙的数字比例关系,我们还可以通过其它方法来深入探究。