go语言学习--go语言递归函数

与天地兮比寿,与日月兮齐光。这篇文章主要讲述go语言学习--go语言递归函数相关的知识,希望能为你提供帮助。
递归,就是在运行的过程中调用自己。

func recursion() recursion() /* 函数调用自身 */func main() recursion()

【go语言学习--go语言递归函数】Go 语言支持递归。但我们在使用递归时,开发者需要设置退出条件,否则递归将陷入无限循环中。
递归函数对于解决数学上的问题是非常有用的,就像计算阶乘,生成斐波那契数列等。
阶乘
package mainimport "fmt"func Factorial(n uint64)(result uint64) if (n > 0) result = n * Factorial(n-1) return resultreturn 1func main() var i int = 15 fmt.Printf("%d 的阶乘是 %d\\n", i, Factorial(uint64(i)))

斐波那契数列
package mainimport "fmt"func fibonacci(n int) int if n < 2 return nreturn fibonacci(n-2) + fibonacci(n-1)func main() var i int for i = 0; i < 10; i++ fmt.Printf("%d\\t", fibonacci(i))


    推荐阅读