码迷,mamicode.com
首页 > 编程语言 > 详细

Go语言之递归函数

时间:2020-03-27 11:05:40      阅读:68      评论:0      收藏:0      [点我收藏+]

标签:import   var   func   无限   factor   print   printf   斐波那契   函数   

Go 语言递归函数

递归,就是在运行的过程中调用自己。

Go 语言支持递归。但我们在使用递归时,开发者需要设置退出条件,否则递归将陷入无限循环中。

递归函数对于解决数学上的问题是非常有用的,就像计算阶乘,生成斐波那契数列等。

package main

import "fmt"

func factorial(n uint64) uint64 {
	if n > 1 {
		return n * factorial(n-1)
	}
	return 1
}

func main() {
	a := factorial(3)
	fmt.Println(a)
}

斐波那契数列

package main

import "fmt"

func feibonaqie(n int) int {

	if n < 2 {
		return n
	}
	return feibonaqie(n-2) + feibonaqie(n-1)
}

func main() {
	var i int
	for i = 0; i < 10; i++ {
		fmt.Printf("%d\t", feibonaqie(i))
	}

}

Go语言之递归函数

标签:import   var   func   无限   factor   print   printf   斐波那契   函数   

原文地址:https://www.cnblogs.com/heych/p/12579545.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!