AI编程助手
AI免费问答

对回调不是很了解,从开始后第二个1是如何来的,以及3以后的参数我画了图还是没法想像出他是如何运行的

<?php
function fibonacci($n){
if($n==1 ||$n==2){
return 1;
}else{
return fibonacci($n-1)+fibonacci($n-2);
}
}


for($x=1;$x<=10;$x++){
if ($x==1){
echo '0,';
}
if ($x!=10){
echo fibonacci($x).',';
} else {
echo fibonacci($x);
}
}
?>



# PHP
HUNT HUNT 2885 天前 1515 次浏览

全部回复(2) 我要回复

  • 风豆丁

    风豆丁2017-08-23 22:44:31

    这叫递归不叫回调

    菲波那切数列:1、1、2、3、5、8、13....

    第一个数,第二个数值为1,这是规定好的。

    从第三个数开始,当前数的值为前面两个数值得和,这都是菲波那切数列的固有规律。

    用递归的思想求第n个数的值:fibonacci($n) = fibonacci($n-1)+fibonacci($n-2);

    回复
    0
  • HUNT

    HUNT2017-08-21 06:45:50

    依我的理解画出来的图,希望能让各位能更了解我的问题在哪

    未命名.jpg

    回复
    0
  • 取消 回复 发送