package main
import (
"fmt"
)
func Map(input []int, mapper func(int) int) []int {
result := make([]int, len(input))
for i, v := range input {
result[i] = mapper(v)
}
return result
}
func Reduce(input []int, reducer func(int, int) int, initialValue int) int {
result := initialValue
for _, v := range input {
result = reducer(result, v)
}
return result
}
func main() {
data := []int{1, 2, 3, 4, 5}
// Example of mapping: squaring each number
mapped := Map(data, func(x int) int {
return x * x
})
// Example of reducing: summing the numbers
reduced := Reduce(mapped, func(a, b int) int {
return a + b
}, 0)
fmt.Println("Mapped:", mapped)
fmt.Println("Reduced:", reduced)
}
How do I avoid rehashing overhead with std::set in multithreaded code?
How do I find elements with custom comparators with std::set for embedded targets?
How do I erase elements while iterating with std::set for embedded targets?
How do I provide stable iteration order with std::unordered_map for large datasets?
How do I reserve capacity ahead of time with std::unordered_map for large datasets?
How do I erase elements while iterating with std::unordered_map in multithreaded code?
How do I provide stable iteration order with std::map for embedded targets?
How do I provide stable iteration order with std::map in multithreaded code?
How do I avoid rehashing overhead with std::map in performance-sensitive code?
How do I merge two containers efficiently with std::map for embedded targets?