剑指offer Q7 斐波那契数列

剑指offer Q7

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

斐波那契数列(Fibonacci sequence),又称黄金分割数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波那契数列以如下被以递推的方法定义:F(1)=1,F(2)=1, F(n)=F(n - 1)+F(n - 2)(n ≥ 3,n ∈ N*)

这个数列从第3项开始,每一项都等于前两项之和。

用直接递归的方法比较耗时间
推荐题解里叫我皮卡丘提供的方法 思路很清晰 :
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

class Solution:
    def Fibonacci(self, n):
        # write code here
        x=0;y=1
        if n ==0:
            return 0
        elif n <=2:
            return 1
        for i in xrange(2,n+1):
            x,y = y,x+y
        return y

注意:
for i in range(0,5):print i #0 1 2 3 4
for i in xrange(0,5):print i #0 1 2 3 4

发布了15 篇原创文章 · 获赞 0 · 访问量 124

猜你喜欢

转载自blog.csdn.net/kikiwindsky/article/details/104223507