您当前的位置: 首页 >  数据结构
  • 3浏览

    0关注

    880博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

【大话数据结构C语言】13 栈的应用 - 递归的实现

CodeAllen嵌入式编程 发布时间:2020-11-06 23:00:23 ,浏览量:3

经典的递归例子:斐波那契数列(Fibonacci)

其函数表达式为: 在这里插入图片描述

递归定义: 其实在现代语言中,调用自己和其他函数没有什么本质的不同,这种直接调用自己的或通过一系列的调用语句间接的调用自己的函数,就是递归函数

递归有一个非常重要的注意点就是,必须至少有一个条件,满足时递归不在进行然后返回

#include 

/* 斐波那契的递归函数 */
int Fbi(int i)  
{
    if( i < 2 )
        return i == 0 ? 0 : 1;  
    return Fbi(i - 1) + Fbi(i - 2);  /* 这里Fbi就是函数自己,等于在调用自己 */
}  

int main()
{
    int i;
    int a[40];  
    printf("迭代显示斐波那契数列:\n");
    a[0]=0;
    a[1]=1;
    printf("%d ",a[0]);  
    printf("%d ",a[1]);  
    for(i = 2;i < 40;i++)  
    { 
        a[i] = a[i-1] + a[i-2];  
        printf("%d ",a[i]);  
    } 
    printf("\n");
    
    printf("递归显示斐波那契数列:\n");
    for(i = 0;i < 40;i++)  
        printf("%d ", Fbi(i));  
    return 0;
}

在这里插入图片描述

关注
打赏
1665938897
查看更多评论
立即登录/注册

微信扫码登录

0.0389s