剑指offer---斐波那契数列

Posted iwangzhengchao

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了剑指offer---斐波那契数列相关的知识,希望对你有一定的参考价值。

题目:斐波那契数列

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

1 class Solution {
2 public:
3     int Fibonacci(int n) {
4 
5     }
6 };

解题代码:

 1 class Solution {
 2 public:
 3     int Fibonacci(int n) {
 4         int res[2] = {0, 1};
 5         if(n < 2)
 6             return res[n];
 7         long long fn;
 8         long long f1 = 0;
 9         long long f2 = 1;
10         for(int i=2; i<=n; i++){
11             fn = f1 + f2;
12             f1 = f2;
13             f2 = fn;
14         }
15         return fn;
16     }
17 };

 

注意:此题如果使用经典的递归方法,时间复杂度高,运行超时。

以上是关于剑指offer---斐波那契数列的主要内容,如果未能解决你的问题,请参考以下文章

剑指offer-斐波那契数列

剑指offer---斐波那契数列

剑指OFFER斐波那契数列

剑指offer斐波那契数列

剑指offer01-斐波那契数列

[剑指offer] 斐波那契数列