首页> 基础笔记 >GoLang基础学习 >经典案例 经典案例

Go递归经典案例:斐波那契数

作者:小萝卜 2023-04-03 浏览 210

简介请使用递归的方式,求出斐波那契数 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)

文章评论

    高端网站建设