php

斐波那契数列、爬楼梯

<?php

function fbnq(int $number)
{
    if ($number < 3) return $number;
    return fbnq($number - 1) + fbnq($number - 2);
}

function fbnq2(int $number)
{
    if ($number < 3) return $number;

    $arr[1] = 1;
    $arr[2] = 2;
    for ($i = 3; $i <= $number; $i++) {
        $arr[$i] = $arr[$i - 1] + $arr[$i - 2];
    }
    return $arr[$number];
}

var_dump(fbnq(8));
var_dump(fbnq(6));
var_dump(fbnq(4));
var_dump(fbnq(3));
var_dump(fbnq(2));
var_dump(fbnq(1));
echo("<br />");
var_dump(fbnq2(8));
var_dump(fbnq2(6));
var_dump(fbnq2(4));
var_dump(fbnq2(3));
var_dump(fbnq2(2));
var_dump(fbnq2(1));

发表评论