PHP递归算法的一个实例 帮助理解
来源:互联网 发布:浙江大学网络教育学费 编辑:程序博客网 时间:2024/05/22 12:41
转载地址:http://blog.sina.com.cn/s/blog_705e4fdc01016dpb.html
递归函数为自调用函数,在函数体内直接或间接自己调用自己,但需要设置自调用的条件,若满足条件,则调用函数本身,若不满足则终止本函数的自调用,然后把目前流程的主控权交回给上一层函数来执行,可能这样给大家讲解,还是很难明白,直接上例子
<?phpfunction test($n) { echo $n . " "; if ($n > 0) { test($n - 1); } else { echo "<-->"; } echo $n . " ";}test(2);
这个例子最终的输出结果是2 1 0<-->0 1 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,
此时函数已经不再调用自己,开始将流程的主控权交回给上一层函数来执行,也就是开始执行刚刚所有test()函数没来得及输出的最后一个echo,0的一层是1也就是输出1
0 0
- PHP递归算法的一个实例 帮助理解
- 用一个简单的图解方式帮助大家理解递归函数,附送第一阶段PHP串讲总结笔记![PDF整理版]
- PHP递归算法的简单实例
- php递归算法经典实例
- 递归的一个实例
- 递归算法的理解
- 【算法】递归的理解
- 递归算法的理解
- 递归算法的理解
- 一个经典的递归算法题(实例+源码)
- php递归函数的理解
- 一个简单的递归实例
- 递归算法的一些实例
- 汉诺塔递归算法的理解
- Java递归算法的理解
- 递归算法的一种理解
- 对递归算法的理解
- php.ini帮助理解
- iOS NSUserDefaults 简介
- expdp远程导入本地
- 远程实时调试手机上的web页面
- 自动生成bean
- java的堆与栈
- PHP递归算法的一个实例 帮助理解
- JSP页面用 JSTL 输出日期(Date)格式
- IntelliJ IDEA 快捷键
- 在Eclipse中新建Maven项目
- Eclipse安装SVN插件
- css样式加载顺序和覆盖顺序
- 【数据库系统概论】----关系数据库(一)
- Eclipse打JAR包的使用
- Eclipse 快捷键大全(中英文对照及详细用法)