码迷,mamicode.com
首页 > 其他好文 > 详细

斐波那契数列

时间:2020-03-25 01:28:33      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:def   递归   斐波那契数   计算   要求   初始   数列   代码   ==   

题目要求

写一个函数,输入 n ,求斐波那契(Fibonacci)数列的第 n 项。斐波那契数列的定义如下:
F(0) = 0, F(1) = 1
F(N) = F(N - 1) + F(N - 2), 其中 N > 1.
斐波那契数列由 0 和 1 开始,之后的斐波那契数就是由之前的两数相加而得出。答案需要取模 1e9+7(1000000007),如计算初始结果为:1000000008,请返回 1。

算法分析

用循环或递归实现均可,当前数为前两项之和,注意不同题目初始值可能不同。

代码

class Solution(object):
    def fib(self, n):
        x = 0
        y = 1
        temp = 0
        if n == 0 or n == 1:
            return n
        for i in range(2, n + 1):
            temp = x + y
            x = y
            y = temp
        return temp % 1000000007

斐波那契数列

标签:def   递归   斐波那契数   计算   要求   初始   数列   代码   ==   

原文地址:https://www.cnblogs.com/isshpan/p/12563291.html

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