package letter import "sync" func ConcurrentFrequency(s []string) FreqMap { m := FreqMap{} mu := &sync.Mutex{} wg := sync.WaitGroup{} for _, v := range s { wg.Add(1) go func(s string) { for _, r := range s { mu.Lock() m[r]++ mu.Unlock() } wg.Done() }(v) } wg.Wait() return m }