1 回答
TA贡献1811条经验 获得超4个赞
只需预先计算 auxilaryWord 进行哈希,然后进行查找即可。
package main
import (
"fmt"
"strings"
)
var auxilaryWords = []string{"hbs", "habis", "dan", "kapan", "bagaimana", "kita", "kamu", "warga", "pada", "paling", "ga", "gak", "enggak", "tidak", "bukan", "usai", "juga", "yg", "yang", "kpd", "kepada", "nya", "adanya", "jd", "jadi", "sih", "lah", "kan", "photo", "from", "by", "ini", "saja", "utk", "untuk", "lebih", "ternyata", "apa", "sok", "tau", "bagi", "eksis", "keluar", "kk", "kakak"}
var auxHash = map[string]bool{}
func CountTopics(chatWords []string) map[string]int {
result := map[string]int{}
for _, word := range chatWords {
if !auxHash[word] {
result[word] += 1
}
}
return result
}
func init() {
for _, word := range auxilaryWords {
auxHash[word] = true
}
}
func main() {
arrWord := strings.Split(`hai kakak habis makan apa`, " ")
fmt.Println(CountTopics(arrWord))
}
https://play.golang.org/p/Wr2gK_zizL0
- 1 回答
- 0 关注
- 110 浏览
添加回答
举报