선수로 산다, 때론 좋은 코치로
[golang] A Tour of Go - 41 연습 문제 본문
A Tour of Go - 41 연습 문제
https://go-tour-kr.appspot.com/#41
WordCount 함수를 구현합니다. 이 함수는 s라는 문자열 내에서 각각의 "단어"의 등장 횟수를 나타내는 맵을 반환해야 합니다. wc.Test 함수는 주어진 함수를 이용하여 테스트를 실행한 뒤에 그 성공 여부를 출력해 줍니다.
아마도 다음 링크 (strings.Fields)의 내용이 도움이 될 것입니다.
package main
import (
"code.google.com/p/go-tour/wc"
)
func WordCount(s string) map[string]int {
}
func main() {
wc.Test(WordCount)
}
string.Fields는 white space를 기준으로 문자열 잘라서 배열 형태로 리턴합니다.
word := range strings.Fields(s)
map은 string을 이용하여 값을 찾도록 선언하고 map에 있는 단어의 개수를 증가시킵니다.
wordMap := make(map[string]int)
wordMap[word]++
편리한 Go의 range 를 사용합니다.
func WordCount(s string) map[string]int {
wordMap := make(map[string]int)
for _, word := range strings.Fields(s) {
wordMap[word]++
}
return wordMap
}
A Tour of Go 예제 관련
- A Tour of Go - 36 연습 문제, 슬라이스 이중배열 관련, http://godsman.tistory.com/23
- A Tour of Go - 41 연습 문제, golang의 맵, http://godsman.tistory.com/24
- A Tour of Go - 44 연습 문제, (클로저)함수를 리턴, http://godsman.tistory.com/25
'개발 관련 > go' 카테고리의 다른 글
[golang] A Tour of Go - 48 연습 문제 (0) | 2018.02.12 |
---|---|
[golang] A Tour of Go - 44 연습 문제 (0) | 2018.02.01 |
[golang] A Tour of Go - 36 연습 문제 (0) | 2018.02.01 |
[golang] Go 언어 참고자료 (0) | 2018.02.01 |
[golang] 도서-Go 인 액션 (0) | 2018.02.01 |
Comments