天天看点

go语言中的递归函数问题展示思路分析结合案例分析代码展示结果展示

问题展示

go语言中的递归函数问题展示思路分析结合案例分析代码展示结果展示

思路分析

不管是哪门编程语言,递归函数的重要性不言而喻。你只要掌握了下面这两点,没有写不出来的递归。

  1. 找到初始值
  2. 找到递归表达式

结合案例分析

1、找到初始值

第10天 有一个桃子

2、找到递归表达式

第9天 =(第10天+1)*2

第8天 = (第9天+1)*2

所以,总结表达式 : 前一天 = (后一天+1)*2

代码展示

package main

import "fmt"

func sf(day int) int {
	if day == 10 {
		return 1
	} else {
		return (sf(day+1) + 1) * 2
	}
}

func main() {
	fmt.Println("day(1) =>", sf(1))
} 
           

结果展示

go语言中的递归函数问题展示思路分析结合案例分析代码展示结果展示