Python 函数递归

以下是一个使用递归计算阶乘的 Python 函数示例 :

javascript 复制代码
 '''
应用场景:
1. 动态规划问题:在一些需要逐步求解子问题并利用其结果的动态规划场景中,递归可以帮助直观地表达问题的分解和求解过程。
2. 遍历具有递归结构的数据:如递归定义的二叉树、链表等数据结构的遍历和操作。
3. 数学模型和算法:除了斐波那契数列,还有很多数学模型和算法可以用递归简洁地表示和求解。

代码注释:
'''

def fibonacci(n):
    """
    这个函数使用递归方式计算斐波那契数列的第 n 项

    参数:
    n (int): 要计算的斐波那契数列的索引,n 从 0 开始

    返回:
    int: 斐波那契数列第 n 项的值
    """
    if n <= 0:  # 处理边界情况,斐波那契数列的第 0 项为 0
        return 0
    elif n == 1:  # 斐波那契数列的第 1 项为 1
        return 1
    else:
        return fibonacci(n - 1) + fibonacci(n - 2)  # 递归调用,通过前两项计算当前项

# 测试
print(fibonacci(5))  # 输出斐波那契数列第 5 项的值
print(fibonacci(10))  # 输出斐波那契数列第 10 项的值

以上就是文章全部内容了,如果喜欢这篇文章的话,还希望三连支持一下,感谢!

相关推荐
黄忠17 分钟前
大模型之LangGraph技术体系
python·llm
hboot13 小时前
AI工程师第二课 - 数据处理
人工智能·python·数据分析
用户83562907805118 小时前
使用 Python 自动化 PowerPoint 形状布局与格式设置
后端·python
用户83562907805119 小时前
用 Python 自动化 PowerPoint 演讲者备注添加
后端·python
黄忠1 天前
01-系统架构设计-LangGraph状态机与多源异构RAG
python
zzzzzz3101 天前
假如我是掘金管理员,我先给评论区装个'代码审查'系统
python·程序员·机器人
砍材农夫1 天前
python环境|conda安装和使用(2)
后端·python
程序员龙叔2 天前
编写高质量 Skill 系列 -- 如何设计需求分析与用例生成的 SKILL
自动化测试·软件测试·python·软件测试工程师·接口测试·性能测试·skill·ai测试
用户8356290780512 天前
使用 Python 操作 Word 内容控件
后端·python
LDR0062 天前
Type-C 快充全面升级!LDR6601 赋能个人护理便携电机,重塑剃须刀 / 理发器新体验
c语言·开发语言