package main
import (
"fmt"
)
func sum(arr []int, index int) int {
if len(arr) == index{
return arr[index-1]
}
return arr[index-1]+sum(arr,index+1)
}
func maxNum(arr []int) int { // 找出数组中最大的数
if len(arr) == 2{ // 分儿治之,先从简做起,先考虑两个的情况
if arr[0] > arr[1]{
return arr[0]
}else {
return arr[1]
}
}
sub_max := maxNum(arr[1:]) // 9,122,2,89,8 122,2,89,8 2,89,8 89,8
if arr[0] > sub_max{
return arr[0]
}else {
return sub_max
}
}
func main() {
// fmt.Println(sum([]int{5,9,12},1))
fmt.Println(maxNum([]int{5,9,122,2,125,8})) //第一次调用 5,9,122,2,125,8
}
Go语言用递归实现 求数组的总和以及最大值
于 2022-10-11 14:31:05 首次发布