组合数公式:
C(n,m)=n!/((n-m)!*m!)
传统算法
def CombinationNum(n,m):
#n>=m n,m都是自然数
#找到一个出口
if m == 0 or n == m:
return 1
return CombinationNum(n-1,m-1)+CombinationNum(n-1,m)
print(CombinationNum(5,3))#传入两个参数,得出结果
递归方法实现斐波那契数:
def fun(n):
#斐波那契数:1,1,2,3,5...
if n == 1 or n == 2:#首先定义一个出口
#n为第1时值为1,n为2个时值是1,此时出口为这个判断
return 1
else:
return fun(n-1)+fun(n-2)#前两个数相加为第三个数
print(fun(5))