Skip to content

Instantly share code, notes, and snippets.

@tetsuok
Created April 2, 2012 02:20
Show Gist options
  • Save tetsuok/2280069 to your computer and use it in GitHub Desktop.
Save tetsuok/2280069 to your computer and use it in GitHub Desktop.
An answer of the exercise: Maps on a tour of Go
package main
import (
"code.google.com/p/go-tour/wc"
"strings"
)
func WordCount(s string) map[string]int {
m := make(map[string]int)
a := strings.Fields(s)
for _, v := range a {
m[v]++
}
return m
}
func main() {
wc.Test(WordCount)
}
@poirierunited
Copy link

package main

import (
"golang.org/x/tour/wc"
"strings"
)

func WordCount(s string) map[string]int {
counterMap := make(map[string]int)

for _, word := range strings.Fields(s) {
	value, isPresent := counterMap[word]
	
	if isPresent {
		counterMap[word] = value + 1
	
	} else {
		counterMap[word] = 1
	}
}

return counterMap

}

func main() {
wc.Test(WordCount)
}

@j4breu
Copy link

j4breu commented Mar 13, 2024

package main

import (
	"golang.org/x/tour/wc"
	"strings"
)

func WordCount(s string) map[string]int {
	count := make(map[string]int)
	
	for _, word := range strings.Fields(s) {
		count[word]++
	}
	
	return count
}

func main() {
	wc.Test(WordCount)
}

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment