实现 map 函数:
func Map(arr []int, f func(int) int) []int {
result := make([]int, len(arr))
for i, v := range arr {
result[i] = f(v)
}
return result
}
实现 filter 函数:
func Filter(arr []int, f func(int) bool) []int {
result := []int{}
for _, v := range arr {
if f(v) {
result = append(result, v)
}
}
return result
}
实现 find 函数:
func Find(arr []int, f func(int) bool) int {
for _, v := range arr {
if f(v) {
return v
}
}
return -1 // 如果未找到,则返回一个错误值
}
实现 reduce 函数:
func Reduce(arr []int, f func(int, int) int, initVal int) int {
result := initVal
for _, v := range arr {
result = f(result, v)
}
return result
}