PHP递归函数-PHP递归算法

  • 1,739

递归调用所谓的PHP递归函数调用,就是函数可以在其声明的执行叙述之中调用执行自己。通常在此类型的函数之中会附加一个条件判断叙述,以判断是...

PHP内部函数


就是在函数里面还可以定义和调用函数

function demo(){

function test(){}

function fun(){}

}

PHP递归调用


所谓的函数递归调用,就是函数可以在其声明的执行叙述之中调用执行自己。

通常在此类型的函数之中会附加一个条件判断叙述,以判断是否需要执行递归调用,并且在特定条件下终止函数的递归调用动作,把目前流程的主控权交回上一层函数执行。因此当某个执行递归调用的函数,没有附加条件判断叙述时可能会造成无限循环的错误情形.

函数递归调用最大的好处在于可以精简程序中繁杂重复调用程序,并且能以这种特性来执行一些较为复杂的运算动作。

例如我们利用递归来进行阶乘的计算,示例如下:

<?php
echo "利用递归调用来运算 N 的阶乘<p>";
function facto($n){
    if ($n > 1){
        $r=$n*facto($n-1);}
    else{
        $r=$n;
    }
    return $r;
}
 
echo "当 N 值为 5 时,阶乘为: ".facto(5)."<br>";
echo "当 N 值为 10 时,阶乘为: ".facto(10);
?>

整个递归调用的过程我们可以使用下图来表示(假设fact()是一个利用递归进行阶乘计算的函数):

PHP递归函数-PHP递归算法

PHP递归函数-PHP递归算法

weinxin
我的微信
这是我的微信扫一扫
开拓者博主
  • 本文由 发表于 2016年9月15日11:23:32
  • 转载请务必保留本文链接:https://www.150643.com/343.html
匿名

发表评论

匿名网友 填写信息