开发者社区> 问答> 正文

给出递归算法的一个例子

实例,不要代码

展开
收起
知与谁同 2018-07-18 17:12:46 1693 0
4 条回答
写回答
取消 提交回答
  • Nothing for nothing.
    汉诺塔问题。。。。。。。。
    2019-07-17 22:55:48
    赞同 展开评论 打赏
  • TA有点害羞,没有介绍自己...
    求解汉诺塔
    2019-07-17 22:55:48
    赞同 展开评论 打赏
  • 这个时候,玄酱是不是应该说点什么...
    递归算法是一种算法思想,主要解决已知序列初始部分的值f(0)~f(k),以及f(n+1)与f(n)~f(m)之间关系,求解f(x)的问题。其中m-n 小于等于k 。
    例如斐波纳契数列问题
    已知 f(0) = 0,f(1) = 1, f(n + 1) = f(n - 1) + f(n - 2) (n>=2,n∈N*)
    此时可得递归思想书写的算法函数
    int f(unsigned int k)
    {
    if (k == 0)
    return 0;
    else if (k == 1)
    return 1;
    else
    return f(k - 1) + f(k - 2);
    }

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

    经典问题——有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问第三年每个月的兔子总数为多少。
    简单一点的:小明有三个哥哥,小明比他三哥小两岁,他三哥比他二哥小两岁,他二哥比他大哥小两岁,他大哥今年22岁,问小明几岁。

    2019-07-17 22:55:48
    赞同 展开评论 打赏
  • Golang的Fibonacci
    func fibonacci(f int) int {  
         if f == 1 || f == 2 {  
             return 1  
         }  
         return fibonacci(f-1) + fibonacci(f-2)  
     }
    2019-07-17 22:55:48
    赞同 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
数据+算法定义新世界 立即下载
袋鼠云基于实时计算的反黄牛算法 立即下载
Alink:基于Apache Flink的算法平台 立即下载