• 递归函数__斐波拉契数列__


    递归

        ____函数自己调用自己,又可以理解为自己的事情自己做。

       如果觉得难以理解,可以把理解成这个函数调用了一个函数,只是这个函数和自己长得一模一样。

    ---------------------------------------------------------------------------------------

        拿一对刚出生的小兔子编故事。

        假设,一对刚出生的小兔子,第一个月没有繁殖能力,两个月后生下一对兔子。

        假设所有的兔子都不死,那么10月后有多少对兔子?

    所经历的月数                    1           2            3           4          5           6           7             8               9              10

    兔子对数         1      1      2      3     5      8     13    21     34      55

    ---------------------------------------------------------------------------------------

    #include <stdio.h>
    
    int FBArray(int i)
    {//FBArray(1)    FBArray(2)    FBArray(3)    FBArray(4)    FBArray(5)
     //    1              1            2             3             5     
        if(i < 2)
        {
            return (i == 0)? 0 : 1;
        }
        return FBArray(i-1) + FBArray(i-2);
    }
    
    int main()
    {
        printf("
    ");
        int i;
        for(i = 1 ; i <= 40 ; i++)
        {//打印40个月兔子的数量变化
            printf("%d
    ",FBArray(i));
        }  
        printf("
    ");
        
        return 0;
    }
     

     如果考虑算法复杂度的的话,还是以下代码更优

     
    //斐波那契数列查找算法,求斐波那契数列第n项
    #include<stdio.h>
    unsigned long long FBArray(unsigned int n); 
    int main(void)
    {
        int n;
        scanf("%d" , &n);
        printf("%llu
    " , FBArray(n));
        return 0;
    }
    unsigned long long FBArray(unsigned int n)
    {
        int i , fibone , fibtwo , fibthree;
        int fi[2] = {0 , 1};
        fibone = 0;
        fibtwo = 1;
        
        if(n < 2)
        {
            return fi[n];
        }
        else
        {
            for(i = 2;i <= n;i++)
            {
                fibthree = fibone + fibtwo;
                fibtwo = fibone;
                fibone = fibthree;
            }
            return fibthree;
        }
    }
  • 相关阅读:
    【推荐】iOS汉字转拼音第三方库
    iOS实现图像素描效果
    iOS实现图像的反色,怀旧,色彩直方图效果
    iOS实现图像指定区域模糊
    iOS 9.2新增API
    讲讲我的开发生涯
    iOS第三方类库汇总【持续更新】
    美图秀秀-美化图片之【背景虚化】界面设计
    美图秀秀-美化图片之【特效】界面设计
    iOS二十种超酷时尚艺术滤镜汇总【附源码】
  • 原文地址:https://www.cnblogs.com/baixiaoxiao/p/10573119.html
Copyright © 2020-2023  润新知