5. python 函数二
递归函数
递归函数就是在函数内调用自己
1.使用递归计算阶乘
|
|
2.斐波那契数列
递归是在python中是非常消耗内存的,计算40的斐波那契数列使用迭代是秒计算的,而使用递归等很长一段时间
使用迭代计算斐波那契数列12345678910111213141516def fib1(num): if num < 0: return 0 m1 = 1 m2 = 1 m3 = 1 while (num - 2 > 0): m3 = m2 + m1 m1 = m2 m2 = m3 num -= 1 return m3--------------num = int(input('输入一个正整数用迭代计算它的斐波那契数列:'))result = fib1(num)print('%d的斐波那契数列是:%d' %(num,result))
使用递归计算斐波那契数列1234567891011def fib2(num): if num < 0: return 0 if num == 1 or num == 2: return 1 else: return fib2(num - 1) + fib2(num - 2)------------ num = int(input('输入一个正整数用递归计算它的斐波那契数列:'))result = fib2(num)print('%d的斐波那契数列是:%d' %(num,result))