跳到主要内容

斐波那契数列

力扣题库-509

斐波那契数(Fibonacci sequence)通常用 F(n) 表示形成的序列称为斐波那契数列。该数列由 0 和 1 开始,后面的每一项数字都是前面两项数字的和。 因数学家列昂纳多·斐波那契(Leonardoda Fibonacci)以兔子繁殖为例子而引入,故又称为“兔子数列”。

F(0) = 0,F(1) = 1,F(n) = F(n - 1) + F(n - 2),其中 n > 1。通俗来说就是:F3 = F1 + F2

获取n个斐波那契数

function fibonacci($n = 2) {
$fib = [1, 1];
for ($i = 2; $i < $n; $i++) {
$fib[$i] = $fib[$i - 2] + $fib[$i - 1];
}
return $fib;
}

递归获取n(F3)的值

function fibonacciValue($n) {
if ($n === 0 || $n === 1) {
return $n;
}
return fibonacciValue($n - 1) + fibonacciValue($n - 2);
}
for ($i=0; $i < 10; $i++) {
echo fibonacciValue($i) . ' ';
}