本篇为大家介绍一下递归的经典案例。

一、什么是递归函数?

一个函数在它的函数体内调用它自身称为递归调用。 这种函数称为递归函数。

二、几行看懂php递归function recursion($i){

if($i<1){

exit; // 递归出口

}

echo $i."
";

recursion($i-1);

}

recursion(10); // 浏览器将显示从10显示到1

效果图

三、通过递归,列出省市区$item = array(

array('id'=>1,'pid' => 0, 'name'=>'广东省' ),

array('id'=>2,'pid' => 0, 'name'=>'广西省' ),

array('id'=>3,'pid' => 1, 'name'=>'深圳市' ),

array('id'=>4,'pid' => 3, 'name'=>'宝安区' ),

array('id'=>5,'pid' => 1, 'name'=>'广州市' ),

);

function recursion($array, $pid = 0){

$arr = array();

foreach ($array as $v) {

if ($v['pid'] == $pid) {

$temp = array();

$temp = recursion($array, $v['id']);

//判断是否存在子数组

if($temp)

{

$v['son'] = $temp;

}

$arr[] = $v;

}

}

return $arr;

}

$array = recursion($item);

echo "

";

print_r($array);

效果图

更多PHP相关知识,请访问PHP中文网!

php递归实例,php递归经典案例相关推荐

  1. 小波变换系数计算实例_小波分析经典案例

    登录后查看更多精彩内容~ 您需要 登录 才可以下载或查看,没有帐号?立即注册 x 时间序列-小波分析 时间序列(Time Series)是地学研究中经常遇到的问题.在时间序列研究中,时域和频域是常用的 ...

  2. python100例 分词-Python中文分词工具之结巴分词用法实例总结【经典案例】

    本文实例讲述了Python中文分词工具之结巴分词用法.分享给大家供大家参考,具体如下: 结巴分词工具的安装及基本用法,前面的文章<Python结巴中文分词工具使用过程中遇到的问题及解决方法> ...

  3. 递归算法(python),汉诺塔问题,斐波那契数列,一个简单的递归实例,用递归实现阶乘,用递归查看目录及文件

    https://blog.csdn.net/hanhanwanghaha宝藏女孩 欢迎您的关注! 欢迎关注微信公众号:宝藏女孩的成长日记 让这个可爱的宝藏女孩在努力的道路上与你一起同行! 如有转载,请 ...

  4. python经典案例-Python递归的经典案例

    目录 : 一.递归的简介 二.递归的经典应用 2.1 递归求阶乘 2.2 递归推斐波那契数列 2.3 二分法找有序列表指定值 2.4 递归解汉诺塔 前言: 当我们碰到诸如需要求阶乘或斐波那契数列的问题 ...

  5. 递归(二)-------经典递归实例(汉诺塔问题)

    2019独角兽企业重金招聘Python工程师标准>>> 上一篇文章讨论一个经典的递归实例(Fibonacy数列问题),现在来讨论一下另外一个经典的递归例子:汉诺塔问题: 问题描述:在 ...

  6. 汉诺塔python创新设计_递归经典案例汉诺塔 python实现

    最近在廖雪峰大神的教程学习python 学到递归的时候有个汉诺塔的练习,汉诺塔应该是学习计算机递归算法的经典入门案例了,因此本人以为能够写篇博客来表达一下本身的看法.这markdown编辑器还不怎么会 ...

  7. 87-Java方法递归形式、算法流程总结、递归常见案例、递归经典案例-猴子吃桃问题、非规律化递归案例-文件搜索、啤酒问题

    方法递归 一.递归的形式和特点 1.什么是方法递归? 方法直接调用自己或者间接调用自己的形式称为方法递归(recursion). 递归作为一种算法在程序设计语言中广泛应用. 2.递归的形式 直接递归: ...

  8. c语言递归法1 2 n,递归法_C语言递归法_递归算法经典实例(2)

    在网上搜索梵塔游戏fanta.exe,自己动手,体会梵塔问题,尝试解决问题. 3 问题分析 教师提出问题: 1. 盘子移动过程中的两个要求? 2. 寻找规律:(教师引导,学生描述移动过程) (1)两个 ...

  9. 算法设计方法:递归的内涵与经典应用

    摘要: 大师 L. Peter Deutsch 说过:To Iterate is Human, to Recurse, Divine.中文译为:人理解迭代,神理解递归.毋庸置疑地,递归确实是一个奇妙的 ...

  10. 深度理解递归,手撕经典递归问题(汉诺塔,青蛙跳台阶),保姆级教学。

    目录 序言: 一.函数递归( recursion) 二.递归的两个必要条件 三.递归小问题 (1)接受一个整型值(无符号),按照顺序打印它的每一位 (2)编写函数不允许创建临时变量,求字符串的长度(利 ...

最新文章

  1. 为什么我的开发方式如此愚蠢?
  2. python语言结构_Python语言表示语句结构时采用
  3. JS-内置对象内置构造函数事件-拖拽轮播图无缝滚动
  4. 阿里大牛总结:学会这些Kafka知识,吊打面试官就是分分钟的事
  5. 同一个JDK,命令行运行,与JNI加载虚拟机,还是有差异
  6. 易筋SpringBoot 2.2 | 第三十二篇:Redis Docker入门
  7. PanDownloadSpeedPan迅雷极速版合集
  8. html怎么设置整体右对齐,如何在html中右对齐按钮
  9. 编写python爬虫基础_0基础如何快速写python爬虫
  10. golang-如何用全局参数打印程序运行信息
  11. 双闭环pid matlab仿真,SPWM波控制单相逆变器双闭环PID调节器的Simulink建模与仿真...
  12. 【Android】BoardcastReceiver简介
  13. 十四.Deepin Linux V20.7 插入耳机听不到声音的解决办法
  14. 向日葵连接linux无桌面,远程桌面连接不上怎么解决?向日葵远程桌面控制怎么使用?...
  15. mysql教程网易云课堂_网易云课堂《MySQL从入门到精通》2017
  16. ASP.NET 模拟测试001-100题
  17. 在cmd命令提示符里运行代码
  18. QSplitter设置比例
  19. python爬虫如何爬亚马逊_Python爬取当当、京东、亚马逊图书信息代码实例
  20. 机器人ccid认证_机器人认证来了

热门文章

  1. SoC,SiP,IP和Chiplet的区别
  2. 基于微信教室图书馆座位预约小程序毕业设计毕设作品(6)开题答辩PPT
  3. 24V单节锂电池充电芯片
  4. Android信息处理机制
  5. mysql pxc缺点_MYSQL高可用之PXC
  6. android 远程桌面软件,安卓上的远程桌面软件:Xtralogic Remote Desktop Client
  7. 关于windows11麦克风声音小的一个bug
  8. Linux下内存情况分析
  9. RHEL7CentOS7 (精简操作指令)
  10. 三种文本特征提取(TF-IDF/Word2Vec/CountVectorizer)