Go斐波那契数列

Posted yzg-14

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Go斐波那契数列相关的知识,希望对你有一定的参考价值。

package main
import (
	"fmt"
)

func fbn(n int) ([]uint64) {
	//声明一个切片,切片大小 n
	fbnSlice := make([]uint64, n)
	//第一个数和第二个数的斐波那契 为1
	fbnSlice[0] = 1
	fbnSlice[1] = 1
	//进行for循环来存放斐波那契的数列
	for i := 2; i < n; i++ {
		fbnSlice[i] = fbnSlice[i - 1] + fbnSlice[i - 2]
	}

	return fbnSlice
}

func main() {

	/*
	1)可以接收一个 n int
	2)能够将斐波那契的数列放到切片中
	3)提示, 斐波那契的数列形式:
	arr[0] = 1; arr[1] = 1; arr[2]=2; arr[3] = 3; arr[4]=5; arr[5]=8

	思路
	1. 声明一个函数 fbn(n int) ([]uint64)
	2. 编程fbn(n int) 进行for循环来存放斐波那契的数列  0 =》 1 1 =》 1
	*/

	//测试一把看看是否好用
	fnbSlice := fbn(20)
	fmt.Println("fnbSlice=", fnbSlice)
	//fnbSlice= [1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597 2584 4181 6765]

}

  

以上是关于Go斐波那契数列的主要内容,如果未能解决你的问题,请参考以下文章

Go斐波那契数列

Python与Go斐波那契数列

计算斐波那契数列的性能对比:Python,Java,Go

Fibonacci斐波那契数列 C++或go实现

go 实现几个递归经典案例(阶乘斐波那契数列二分查找汉诺塔)

08《算法入门教程》递归算法之斐波那契数列