目录
百战程序员,全站22050+开发课程+文档 ,学习精选优质好课快人一步!观看视频 快捷键ALT+N

Python全系列 教程

3567个小节阅读:5931.1k

收藏
全部开发者教程

鸿蒙应用开发

C语言快速入门

JAVA全系列 教程

面向对象的程序设计语言

Python全系列 教程

Python3.x版本,未来主流的版本

人工智能 教程

顺势而为,AI创新未来

大厂算法 教程

算法,程序员自我提升必经之路

C++ 教程

一门通用计算机编程语言

微服务 教程

目前业界流行的框架组合

web前端全系列 教程

通向WEB技术世界的钥匙

大数据全系列 教程

站在云端操控万千数据

AIGC全能工具班

A

A A

White Night

阅读(166)
赞(0)

递归函数

image-20220913125538300

一个函数在内部调用了其本身,那个这个函数就是递归函数,粗暴的理解:函数内部自己调用自己

生活中案例

image-20220906094004342

image-20220906094148311

注意

使用递归容易产生栈溢出的错误

  • 递归一定要有出口,否则就是"死循环"的递归

  • 递归的次数不能太多

它主要包含两个阶段:

  1. :程序不断深入地调用自身,通常传入更小或更简化的参数,直到达到"终止条件"

  2. :触发"终止条件"后,程序从最深层的递归函数开始逐层返回,汇聚每一层的结果

案例:实现10以内阶乘

问题

递归如何实现?

递归思想

递归其主要思想在于:

  • 将问题分为规模更小的相同问题,持续分解,直到问题规模小到可以用非常简单直接的方式来解决

  • 分解完后,再合并结果

image-20231212223607490

分析得递归的3个主要因素

  1. 递归调用:对应"递",函数调用自身,通常输入更小或更简化的参数

  2. 终止条件:用于决定什么时候由"递"转"归"

  3. 返回结果:对应"归",将当前递归层级的结果返回至上一层

实时效果反馈

1. 关于递归,说法错误的是?

A 递归需要定义一个函数

B 递归需要找出出口条件

C 递归需要逻辑规律

D 递归思路就是分解问题

答案

1=>D

北京市昌平区回龙观镇南店村综合商业楼2楼226室

©2014-2023 百战卓越(北京)科技有限公司 All Rights Reserved.

京ICP备14032124号-2