码迷,mamicode.com
首页 > 编程语言 > 详细

python_实现_斐波那契额函数

时间:2016-09-13 01:34:07      阅读:179      评论:0      收藏:0      [点我收藏+]

标签:

在学递归的时候,用递归实现了一个

下面是代码

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_实现_斐波那契额函数

标签:

原文地址:http://www.cnblogs.com/timtike/p/5866989.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!