您的位置:首页 > 其它

Fibonacci

2015-08-02 01:00 204 查看
斐波那契数列一定不能递归,肯定会超时,要用递推写

class Solution:
# @param n: an integer
# @return an integer f(n)
def fibonacci(self, n):
# write your code here
a = [0, 1]
if n < 3:
return a[n-1]
for i in xrange(n-2):
a.append(a[-1]+a[-2])
return a[-1]


顺便附上会超时的递归写法:

class SolutionTE:
# @param n: an integer
# @return an integer f(n)
def fibonacci(self, n):
# write your code here
if n < 3:
return n-1
return reduce(lambda x,y:x+y,(self.fibonacci(n-1),self.fibonacci(n-2)))
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: