递推
1什么是递推?:根据已有节点的值,以及规律推出之后节点的值
2为什么要用递推:简单的解决有规矩事件
3怎么用?:
我们举个经典的例子:
如果1对兔子每月能生1对小兔子,而每对小兔在它出生后的第3个月就可以生1对小兔子,如果从1对初生的小兔子开始,1年后能繁殖多少兔子?
def my1(max):
a ,b,c ,i= 1,0,0 0
while i<max:
c = c+b
b = a
a = c
print a+b+c
i+=1
方法:我们可以把兔子分为1个月大的,2个月大的,3个月大的 通过规律我们知道 1个月大的兔子 下个月肯定会变成2月大的兔子,而2月则会变成3月
大的 而3月会一直累加 ,这样的话规律就很明显,3月大的下个月等于 本身3月的兔子+2月的兔子(长大了),而2月的兔子则会变成1月的兔子数量,
1月的数量等于3月兔子的(3个月的兔子会生小兔子)
时间: 2024-11-10 14:33:02