def fact(n):
if n>1:
return n*fact(n-1)
else:
return n
print(fact(5))
递归函数有两个特点:
1,自己调用自己
2,有一个结束条件
注意:
1,但凡是递归可以写的程序,循环都可以解决。
2,递归效率在很多时候会很低,不推荐使用。
递归使用场景:斐波那契数列
#0,1,1,2,3,5,8,13,21,34
def fbnq(n):
if n<=2:
return n
else:
return fbnq(n-1)+fbnq(n-2)
print(fbnq(6))