首页> 基础笔记 >GoLang基础学习 >经典案例 经典案例
Go递归经典案例:斐波那契数
作者:小萝卜 2023-04-03 【 GoLang 】 浏览 569
简介请使用递归的方式,求出斐波那契数 1,1,2,3,5,8,13...给你一个整数 n,求出它的斐波那契数是多少?
斐波那契数
请使用递归的方式,求出斐波那契数 1,1,2,3,5,8,13...
给你一个整数 n,求出它的斐波那契数是多少?
思路:
1)当 n == 1 || n ==2 ,返回 1
2)当 n >= 2,返回前面两个数的和 f(n-1) + f(n-2)
代码:
package main
import (
"fmt"
)
// 请使用递归的方式,求出斐波那契数 1,1,2,3,5,8,13...
// 给你一个整数 n,求出它的斐波那契数是多少?
func ff(n int) int {
if n == 1 || n == 2 {
return 1
} else {
return ff(n-1) + ff(n-2)
}
}
func main() {
fmt.Println("res=", ff(3)) //2
fmt.Println("res=", ff(4)) //3
fmt.Println("res=", ff(5)) //5
fmt.Println("res=", ff(6)) //8
fmt.Println("res=", ff(7)) //13
fmt.Println("res=", ff(8)) //21
fmt.Println("res=", ff(9)) //34
}
很赞哦! (0)
上一篇:Go递归经典案例:猴子吃桃
下一篇:Go经典案例:打印九九乘法表