老师这个题怎么写 帮忙详解下

来源:3-3 知识图谱展示区

qq_慕神8318241

2021-10-19 14:39:45

有一对小兔子从出生后第三个月起,每一个月都生一对小兔子。生下来的小兔子长到第三个月后,每一个月又生一对小兔子。补充下面的代码,求任意月份兔子的对数?(选择一项)


写回答

1回答

好帮手慕然然

2021-10-19

同学你好,可以参考以下思路来实现:假设n代表月份,f(n)代表兔子总对数

n = 1时,f(n) = 1对

n = 2时,f(n) = 1对

n = 3时,f(n) = 1+1=2对

n = 4时,f(n) = 1+2=3对

n = 5时,f(n) = 2+3=5对

n = 6时,f(n) = 3+5=8对

n = 7时,f(n) = 5+8=13对

n = 8时,f(n) = 8+13=21对

......

通过分析以上过程,可以看出:除了n=1和n=2两个月份小兔子的数量为1对之外,其它情况下,当月份为n时,小兔子的数量都是前两个月数量之和,即 f(n) = fn(n-1)+fn(n-2)。

然后,将上面的分析转换为代码(会用到递归),如下

https://img.mukewang.com/climg/616e74040991c3bf05330304.jpg

实际上这是一个斐波那契数列问题,老师在课程中https://class.imooc.com/lesson/2122#mid=50442 讲过这个数列,同学可以再去复习一下。

祝学习愉快!


1

0 学习 · 17877 问题

查看课程