华域联盟 Golang Go语言实现Fibonacci数列的方法

Go语言实现Fibonacci数列的方法

本文实例讲述了Go语言实现Fibonacci数列的方法。分享给大家供大家参考。具体如下:

Fibonacci数列:1,1,2,3,5,8,13,21,,, (即从第三项起,每一项的值都等于前两项之后)

第一种,使用递归:

复制代码 代码如下: func fibonacci(a int) int { 

    if a == 1 || a == 2 { 

        return 1 

    } 

    return fibonacci(a-1) + fibonacci(a-2) 

}

第二种,不使用递归:

复制代码 代码如下: func fibonacci_version2(index int) int { 

    if index == 1 || index == 2 { 

        return 1 

    } 

    a, b := 1, 1 

    for i := 3; i <= index; i++ { 

        a, b = b, (a + b) 

    } 

    return a + b 

}

经过检验,使用非递归算法的效率要远远高于递归算法。

希望本文所述对大家的Go语言程序设计有所帮助。

本文由 华域联盟 原创撰写:华域联盟 » Go语言实现Fibonacci数列的方法

转载请保留出处和原文链接:https://www.cnhackhy.com/109905.htm

本文来自网络,不代表华域联盟立场,转载请注明出处。

作者: sterben

发表回复

联系我们

联系我们

2551209778

在线咨询: QQ交谈

邮箱: [email protected]

工作时间:周一至周五,9:00-17:30,节假日休息

关注微信
微信扫一扫关注我们

微信扫一扫关注我们