23 递推算法
递推和递归是兄弟吗?
大纲
什么是递推算法
# 递归
def fibonacc_1(n):
if n<= 2:
return 1 # 停止条件
else:
return fibonacci(n-1)+fibonacci(n-2) # 分拆到子问题
fibonacc_1(8)21# 递推
def fibonacc_2(n):
if n in (1,2): # 初始情况的返回值
return 1
a=b=1
for i in range(1,n):
new = a+b # 递推式,后一个数字等于前面两个数字之和
a=b
b=new
return a
fibonacc_2(8)上台阶问题
汉诺塔问题
猴子吃桃问题
Last updated