首页  >  文章  >  后端开发  >  php如何实现菲波那切数列

php如何实现菲波那切数列

hzc
hzc原创
2020-06-10 16:10:202944浏览

php如何实现菲波那切数列

php实现斐波那契数列

斐波那契数列: 
1 1 2 3 5 8 13 21 34 55 …

概念: 
前两个值都为1,该数列从第三位开始,每一位都是当前位前两位的和 
规律公式为: 
Fn = F(n-1) + F(n+1) 
F:指当前这个数列 
n:指数列的下标

非递归写法:

function fbnq($n){  //传入数列中数字的个数
    if($n <= 0){
        return 0;
    }
    $array[1] = $array[2] = 1; //设第一个值和第二个值为1
    for($i=3;$i<=$n;$i++){ //从第三个值开始
        $array[$i] = $array[$i-1] + $array[$i-2]; 
        //后面的值都是当前值的前一个值加上前两个值的和
    }
    return $array;
}

递归写法:

function fbnq($n){    
    if($n <= 0) return 0; 
    if($n == 1 || $n == 2) return 1; 
    return fbnq($n - 1) + fbnq($n - 2);
}

推荐教程: 《php教程

以上是php如何实现菲波那切数列的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn