PHP递归算法的简单实例


Posted in PHP onFebruary 28, 2019

递归函数为自调用函数,在函数体内直接或直接自个调用自个,但需求设置自调用的条件,若满意条件,则调用函数自身,若不满意则停止本函数的自调用,然后把目前流程的主控权交回给上一层函数来履行,也许这么给我们解说,仍是很难理解,比如

function 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, 此刻0>0的条件不满意,不在履行test()函数,而是echo “”,并且履行后边的 echo 0

此刻函数现已不再调用自个,开端将流程的主控权交回给上一层函数来履行,也即是开端履行刚刚一切test()函数没来得及输出的最终一个echo,0的一层是1也即是输出1 1的上一层是2 也即是输出2 2没有山一层 所以呢 输出的内容即是2 1 0<?>0 1 2

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对三水点靠木的支持。如果你想了解更多相关内容请查看下面相关链接

PHP 相关文章推荐
PHP6 mysql连接方式说明
Feb 09 PHP
几种有用的变型 PHP中循环语句的用法介绍
Jan 30 PHP
PHP管理内存函数 memory_get_usage()使用介绍
Sep 23 PHP
php fsockopen伪造post与get方法的详解
Jun 14 PHP
PHP goto语句简介和使用实例
Mar 11 PHP
PHP实现事件机制实例分析
Jun 26 PHP
PHP下SSL加密解密、验证、签名方法(很简单)
Jun 28 PHP
thinkphp框架page类与bootstrap分页(美化)
Jun 25 PHP
PHP实现的简单路由和类自动加载功能
Mar 13 PHP
浅谈Laravel核心解读之Console内核
Dec 02 PHP
ThinkPHP5&amp;5.1框架关联模型分页操作示例
Aug 03 PHP
基于PHP实现解密或加密Cloudflar邮箱保护
Jun 24 PHP
PHP根据key删除数组中指定的元素
Feb 28 #PHP
PHP去除空数组且数组键名重置的讲解
Feb 28 #PHP
PHP中rename()函数的妙用讲解
Feb 28 #PHP
PHP实现获取ip地址的5种方法,以及插入用户登录日志操作示例
Feb 28 #PHP
PHP微信发送推送消息乱码的解决方法
Feb 28 #PHP
CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患分析
Feb 28 #PHP
PHP删除数组中特定元素的两种方法
Feb 28 #PHP
You might like
BBS(php &amp; mysql)完整版(二)
2006/10/09 PHP
php 实现进制转换(二进制、八进制、十六进制)互相转换实现代码
2010/10/22 PHP
PHP日期处理函数 整型日期格式
2011/01/12 PHP
使用phpQuery采集网页的方法
2013/11/13 PHP
PHP截取指定图片大小的方法
2014/12/10 PHP
smarty模板引擎使用内建函数foreach循环取出所有数组值的方法
2015/01/22 PHP
php常量详细解析
2015/10/27 PHP
ubutu 16.04环境下,PHP与mysql数据库,网页登录验证实例讲解
2017/07/20 PHP
laravel实现Auth认证,登录、注册后的页面回跳方法
2019/09/30 PHP
看了就知道什么是JSON
2007/12/09 Javascript
javascript开发技术大全 第4章 直接量与字符集
2011/07/03 Javascript
JS实现将人民币金额转换为大写的示例代码
2014/02/13 Javascript
详谈javascript中的cookie
2015/06/03 Javascript
省市区三级联动下拉框菜单javascript版
2015/08/11 Javascript
使用Chart.js图表库制作漂亮的响应式表单
2015/10/28 Javascript
JS实现的JSON数组去重算法示例
2018/04/11 Javascript
webpack+vue-cil中proxyTable处理跨域的方法
2018/07/20 Javascript
layui 关闭open弹出框 刷新table表格页面的方法
2019/09/16 Javascript
JS面向对象之单选框实现
2020/01/17 Javascript
vue中可编辑树状表格的实现代码
2020/10/31 Javascript
使用Python写个小监控
2016/01/27 Python
利用ctypes提高Python的执行速度
2016/09/09 Python
使用Python对微信好友进行数据分析
2018/06/27 Python
Pycharm无法使用已经安装Selenium的解决方法
2018/10/13 Python
python 通过麦克风录音 生成wav文件的方法
2019/01/09 Python
使用Python打造一款间谍程序的流程分析
2020/02/21 Python
Python类super()及私有属性原理解析
2020/06/15 Python
python实现批处理文件
2020/07/28 Python
一文详述 Python 中的 property 语法
2020/09/01 Python
世界上最大的冷却器制造商:Igloo Coolers
2019/07/23 全球购物
青年志愿者活动总结
2014/04/26 职场文书
个人职业及收入证明
2014/10/13 职场文书
2014年银行客户经理工作总结
2014/11/12 职场文书
python 闭包函数详细介绍
2022/04/19 Python
python数据处理之Pandas类型转换
2022/04/28 Python
前端使用svg图片改色实现示例
2022/07/23 HTML / CSS