牛客网《剑指Offer》编程 7.斐波那契数列

 

题目描述

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

n<=39

解题思路

斐波那契数列公式:f(n)=f(n-1)+f(n-2),本题使用递归和非递归两种方式进行计算。另外不使用数组储存斐波那契数列,因为如果n足够大,则会使得数组存储不下。

实现代码

int Fibonacci(int n) {
        if(n==0){return 0;}
        else if(n==1){return 1;}
        else{
            return Fibonacci(n-1)+Fibonacci(n-2);
        }
    }
 int Fibonacci(int n) {
        int fn_1=1,fn_2=0;
        if(n==0){return 0;}
        else if(n==1){return fn_1;}
        else{
            int fn=0;
            for(int i=2;i<=n;i++){
                fn=fn_1+fn_2;
                fn_2=fn_1;
                fn_1=fn;
            }
            return fn;
        }
    }

猜你喜欢

转载自blog.csdn.net/eriHanami/article/details/82558880