现有一组数列 1,1, 2, 3, 5, 8, 13, 21 ,……,用递归实现一个函数,求出第n个数字的值。
/**
* 递归实现前两个数之和等于第三个数
* 1,1,2,3, 5, 8, 13, 21
*/
var_dump(sum(12));
exit;
function sum($n){
var_dump($n);
if($n<2){
return 1;
}else{
return sum($n-1) + sum($n-2);
}
}
上述例子中看出,其实递归就是一个,“万丈高楼从地起” 的思想,有规可循,最终还是回归到最初的那两个值上面做运算。