php 斐波那契数列

一、什么是斐波那契数列

斐波那契数列(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;
}

猜你喜欢

转载自blog.csdn.net/change_any_time/article/details/129246379