python_实现_斐波那契额函数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python_实现_斐波那契额函数相关的知识,希望对你有一定的参考价值。
在学递归的时候,用递归实现了一个
下面是代码
1 def fib(n): 2 if n >= 3: 3 return fib(n-1)+fib(n-2) 4 else: 5 return 1 6 print(fib(6))
发现一个很严重的问题:当数字比较小的时候还好,但是当求30以后的数字的时候,就会运行特别长的时间
所以请看下面一种方法
1 while True: 2 def fib(n): 3 result = [1,1] 4 for i in range(n-2): 5 result.append(result[-2]+result[-1]) 6 return result[-1] 7 8 9 n = input(‘你想知道第多少个斐波那契数:‘) 10 if n == ‘q‘: 11 break 12 else: 13 n = int(n) 14 print(‘result = %d‘%(fib(n)))
发现速度提升特别大,求第1000个数都可以,牛!
以上是关于python_实现_斐波那契额函数的主要内容,如果未能解决你的问题,请参考以下文章