免费发布信息
微信公众号

递归函数python简单实例详解

   来源:黔优网责任编辑:优优  时间:2023-11-02 14:11:28 浏览量:53
导读:所有的编程语言都有递归函数,递归指的是一个过程:函数不断引用自身,直到引用的对象不满足条件为结束。可以直接理解为:递归就是在函数内部调用自己的函数被称之为递归目录1函数的递归调用原理2递归函数的优点3递

所有的编程语言都有递归函数,递归指的是一个过程:函数不断引用自身,直到引用的对象不满足条件为结束。可以直接理解为:递归就是在函数内部调用自己的函数被称之为递归

  • 目录

  • 1函数的递归调用原理

  • 2递归函数的优点

  • 3递归函数的缺点

  • 4Python递归函数实例详解

函数的递归调用原理


实际上递归函数是在栈内存上递归执行的,每次递归执行一次就会耗费一些栈内存。栈内存的大小是限制递归深度的重要因素


递归函数的优点


定义简单,逻辑清晰。理论上,所有的递归函数都可以写成循环的方式,但循环的逻辑不如递归清晰。


递归函数的缺点


使用递归方式需要函数做大量的压栈和弹栈操作,由于压栈和弹栈涉及函数执行上下文(context)的现场保存和现场恢复,所以程序的运行速度比不用递归实现要慢。

此外,大量的堆栈操作消耗的内存资源要比非递归调用多。而且,过深的递归调用还可能会导致堆栈溢出。如果操作不慎,还容易出现死循环。因此读者编写代码时需要多加注意,一定要设置递归操作的终止条件。


Python递归函数实例详解


业务需求:遍历arr列表,打印所有的值用递归函数实现

  1. arr=[1,[2,3]] 

  2. def digui(arr): 

  3.     if type(arr)==list: 

  4.         for i in arr: 

  5.             if type(i)==list: 

  6.                 digui(i) 

  7.             else

  8.                 print(i) 

  9.  

  10. digui(arr) 


代码中,判断值如果还是列表就调用自身实现循环判断、打印

 
 
 
没用 0举报 收藏 0
免责声明:
黔优网以上展示内容来源于用户自主上传、合作媒体、企业机构或网络收集整理,版权争议与本站无关,文章涉及见解与观点不代表黔优网官方立场,请读者仅做参考。本文标题:递归函数python简单实例详解,本文链接:https://www.qianu.com/news/253186.html,欢迎转载,转载时请说明出处。若您认为本文侵犯了您的版权信息,或您发现该内容有任何违法信息,请您立即点此【投诉举报】并提供有效线索,也可以通过邮件(邮箱号:kefu@qianu.com)联系我们及时修正或删除。
 
 

 

 
推荐图文
推荐商业资讯