python 递归

递归,对于没有接触过编程的人来说,也是一个不好理解的概念。

递归函数的概念,很简单,就是函数调用了自身,调用是不一定每次都有返回值,但最后肯定有一个返回值。

image

调用过程解析:
image

递归问题深度解析:
https://www.csdn.net/tags/OtTaQgzsMTg4OTktYmxvZwO0O0OO0O0O.html

递归函数通常用来解决结构自相似的问题。
所谓结构自相似,是指构成原问题的子问题与原问题在结构上相似,可以用类似的方法解决。具体地,整个问题的解决,可以分为两部分:
第一部分是一些特殊情况,有直接的解法;
第二部分与原问题相似,但比原问题的规模小。实际上,递归是把一个不能或不好解决的大问题转化为一个或几个小问题,再把这些小问题进一步分解成更小的问题,直至每个小问题都可以直接解决。

因此,递归有两个基本要素:
(1)边界条件:确定递归到何时终止,也称为递归出口
(2)递归模式:大问题是如何分解为小问题的,也称为递归体
递归函数只有具备了这两个要素,才能在有限次计算后得出结果。

递归就是某个函数直接或间接地调用了自身,这种调用方式叫做递归调用。说白了,还是函数调用。既然是函数调用,那么就有一个雷打不动的原则:所有被调用的函数都将创建一个副本,各自为调用者服务,而不受其他函数的影响。

posted @   捷后愚生  阅读(186)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 25岁的心里话
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示