温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Python中递归的知识点整理

发布时间:2021-08-12 15:16:00 来源:亿速云 阅读:151 作者:chen 栏目:大数据

本篇内容主要讲解“Python中递归的知识点整理”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python中递归的知识点整理”吧!

递归 recursion

递归是一种解决问题的方法

递归的核心将问题分解为规模更小的相同问题,并持续的分解,直到问题小到可以用非常简单的方式解决

  • 递归的方向:“将问题分解为规模更小的相同问题”

  • 递归结束条件“直到问题小到可以用非常简单的方式解决”

递归的特征:在算法流程中调用自己

 

递归的例子:数列求和

问题描述:给定一个列表,返回所有的数的和

常规解法:利用for循环

Python中递归的知识点整理


01

不利用for while循环,要利用递归,则需要将问题分解成规模越来越小的方向。

  • 列表的求和本质上就是两个数的加法,故将列表规模的求和问题分解成两个固定操作数的叠加


例如:计算[1,3,5,7,9]


Python中递归的知识点整理


观察例子发现,列表求和具有一个重复的模式,可以将问题归纳为一个公式:
数列的和 = “首数” + “余下数的和”

Python中递归的知识点整理

通过例子还可以得出一个结论:

  • “余数的和”——就是递归调用的地方,规模越来越小

  • 最后只剩下一个数的时候,就是递归的结束条件,直接返回这个数

递归解法:

Python中递归的知识点整理

01

递归其实就是用另一种方式实现了循环,在分析的时候直接就可以把递归调用的地方看成循环,在debug时,程序流程和循环无异

数列求和算法中的递归:“更短数列求和问题”

递归小结

递归三定律:

  • 必须要有一个基本结束条件(递归到只剩一个最小问题)

  • 递归必须要改变状态向基本结束条件演进(减小问题规模)

  • 递归算法必须调用自身(解决减小了规模的相同问题)

到此,相信大家对“Python中递归的知识点整理”有了更深的了解,不妨来实际操作一番吧!这里是亿速云网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI