Go 实现斐波那契数列

17 min read

斐波那契数列是一种递归的数列,其中每个数字都是前两个数字之和。数列的前几个数字是:0、1、1、2、3、5、8、13、21、34。

可以使用循环或递归来实现斐波那契数列。

循环实现:

func fibonacci(n int) int {
    if n < 2 {
        return n
    }
    n1, n2 := 0, 1
    for i := 2; i <= n; i++ {
        n1, n2 = n2, n1+n2
    }
    return n2
}

递归实现:

func fibonacci(n int) int {
    if n < 2 {
        return n
    }
    return fibonacci(n-1) + fibonacci(n-2)
}

执行 fibonacci(6) 会返回 8。