好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

PHP递归算法的一个实例

递归函数为自调用函数,在函数体内直接或间接自己调用自己,但需要设置自调用的条件,若满足条件,则调用函数本身,若不满足则终止本函数的自调用,然后把目前流程的主控权交回给上一层函数来执行,可能这样给大家讲解,还是很难明白,直接上例子

function test ($n){
echo $n.”? “;
if($n>0){
test($n-1);
}else{
echo “<–>”;
}
echo $n.”? ”
}
test(2)

我解释下? 为何输出是这样的

第一步,执行test(2),echo 2,然后因为2>0,执行test(1), 后面还有没来得及执行的echo 2
第二步,执行test(1),echo 1,然后因为1>0,执行test(0),同样后面还有没来得及执行的 echo 1
第三步,执行test(0),echo 0,执行test(0),echo 0,? 此时0>0的条件不满足,不在执行test()函数,而是echo “<–>”,并且执行后面的 echo 0

查看更多关于PHP递归算法的一个实例的详细内容...

  阅读:1362次