python中的递归问题

一. python中的递归问题

递归是一种编程思想,应用场景:

  • 在我们日常开发中,如果要遍历一个文件夹下面所有的文件,通常会使用递归来实现;
  • 在后续的算法课程中,很多算法都离不开递归,例如:快速排序。

递归的特点

  • 函数内部自己调用自己
  • 必须有出口(没有出口就会进入死循环)

简单的一个递归的案例

python 复制代码
# 3 + 2 + 1
def sum_numbers(num):
    if num == 1:
        return 1  # 函数的出口
    return num + sum_numbers(num-1)


sum_result = sum_numbers(3)
# 输出结果为6
print(sum_result)

过程图示

相关推荐
We་ct1 分钟前
LeetCode 212. 单词搜索 II:Trie+DFS 高效解法
开发语言·算法·leetcode·typescript·深度优先·图搜索算法·图搜索
smileNicky4 分钟前
Spring AI系列之对话记忆与工具调用指南
人工智能·python·spring
OxyTheCrack6 分钟前
【C++】简述main函数中的argc与argv
开发语言·c++
历程里程碑13 分钟前
Linux 49 HTTP请求与响应实战解析 带http模拟实现源码--万字长文解析
java·开发语言·网络·c++·网络协议·http·排序算法
ZVAyIVqt0UFji14 分钟前
高可用虚拟IP(HaVip)技术详解:原理、设计与应用
开发语言·网络·网络协议·tcp/ip·perl
飞Link15 分钟前
深度解析 TS2Vec:时序表示学习中的层次化建模(Hierarchical Contrastive Learning)
开发语言·python·学习·数据挖掘
爱炸薯条的小朋友17 分钟前
C#依赖注入和仿写Prism注入
开发语言·c#
代码探秘者18 分钟前
【Java集合】ArrayList :底层原理、数组互转与扩容计算
java·开发语言·jvm·数据库·后端·python·算法
OxyTheCrack25 分钟前
简述各语言GC(垃圾回收)机制
开发语言
李昊哲小课26 分钟前
电商系统项目教程
开发语言·前端·javascript