剑指offer斐波那契数列python

题目描述

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。

n<=39

思路

斐波那契数列,即第n项为第n-1项和n-2项的和,可用递归,但复杂度高。直接用一个数组保存之前的项即可。

代码

1 # -*- coding:utf-8 -*-
2 class Solution:
3     def Fibonacci(self, n):
4         ans = [0,1,1,2]
5         while n > len(ans) - 1:
6             ans.append(ans[-1]+ans[-2])
7         return ans[n]

猜你喜欢

转载自www.cnblogs.com/wangzhihang/p/11781077.html
今日推荐