算法-递归算法

本文介绍了递归算法的核心思想——分而治之,并通过计算阶乘和解决汉诺塔问题来阐述递归的应用。在计算阶乘中,展示了如何通过递归将大问题分解为小问题求解。汉诺塔问题部分,解释了其历史背景与移动规则,以及如何使用递归策略解决这一问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

递归算法

递归函数是直接或间接地调用了自身的函数
在这里插入图片描述
核心思想是分而治之,利用递归算法可以将一个规模较大的问题转化为规模较小的同类问题来求解

注意
同类问题

n!

例如:数学上常见的一个问题-计算一个非负整数n!
计算n!,只要计算出(n-1)!,则n!=n.(n-1)!
计算(n-1)!,只要计算出(n-2)!,则(n-1)!=(n-1)*(n-2)!
计算(n-2)!,只要计算出(n-3)!,则(n-2)!=(n-2)*(n-3)!

计算3!,只要计算出2!,则3!=3*(2!)
计算2!,只要计算出1!,则2!=2*(1!)
1!=1, 这是由于0!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

uncle_ll

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值