一、什么是斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列
,因数学家莱昂纳多·斐波那契(Leonardo Fibonacci)以兔子繁殖
为例子而引入,故又称为“兔子数列”,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……
在数学上,斐波那契数列被以递推的方法定义:F(0)=0,F(1)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 2,n ∈ N*)
,这个数列从第三项开始,每一项都等于前两项之和。
二、与黄金分割的关系
当趋向于无穷大时,前一项与后一项的比值越来越逼近黄金分割0.618(或者说后一项与前一项的比值
小数部分越来越逼近 0.618
)。
三、php 代码实现
// 动态规划解斐波那契数列
function fibRec(int $n)
{
if ($n == 0) {
return $n;
}
$a1 = 0; //假设第一项为0
$a2 = 1; //假设第二项为1
//从第三项开始,每一项等于前两项数之和
for ($i = 1; $i < $n; $i++) {
[$a1, $a2] = [$a2, $a1 + $a2];
}
return $a2;
}