斐波纳契数列,又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、……在数学上,斐波纳契数列以如下被以递归的方法定义:F0=0,F1=1,Fn=F(n-1)+F(n-2)(n>=2,n∈N*)
递归实现
package main
import "fmt"
func fibonacci(num int) int{
if num<2{
return 1
}
return fibonacci(num-1) + fibonacci(num-2)
}
func main(){
for i := 0; i<10; i++{
nums := fibonacci(i)
fmt.Println(nums)
}
}
闭包实现
package main
import "fmt"
func fibonacci() func() int{
a, b :