package main
//Go实现斐波那契
import (
"fmt"
)
//返回一个“返回int的函数”
func fibonacci() func() int {
a := make(map[int]int)
c := 0 /*为了自增*/
d := 1
e := 2 //end
a[0] = -1 //额……为了显示出开头的0 1 1 2
a[1] = -1
a[2] = 1 //end
return func() int {
c++
d++
e++
a[e] = a[c] + a[d]
return a[e]
}
}
func main() {
f := fibonacci()
for i := 0; i < 50; i++ {
fmt.Println(f())
}
}
Go实现斐波那契——另一种方法
最新推荐文章于 2022-10-15 11:04:43 发布
这篇博客展示了如何用Go语言编写一个自动生成斐波那契数列的函数。通过创建一个映射存储斐波那契数,并利用闭包返回一个连续生成斐波那契数的函数。在`main`函数中,调用了生成的斐波那契函数并打印了前50个数。
摘要由CSDN通过智能技术生成