From 376fca144547a002c1fc66bf6c3a6afe2bb8a20e Mon Sep 17 00:00:00 2001 From: yanghang <yanghang@udesk.cn> Date: Wed, 23 Aug 2017 18:16:07 +0800 Subject: [PATCH] changed total freq when deleting a word --- dictionary.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/dictionary.go b/dictionary.go index ea50ebc..d708b2e 100644 --- a/dictionary.go +++ b/dictionary.go @@ -33,8 +33,13 @@ func (d *Dictionary) AddToken(token dictionary.Token) { } func (d *Dictionary) addToken(token dictionary.Token) { + hisFreq := d.freqMap[token.Text()] d.freqMap[token.Text()] = token.Frequency() - d.total += token.Frequency() + if token.Frequency() > 0 { + d.total += token.Frequency() + } else { + d.total -= hisFreq + } runes := []rune(token.Text()) n := len(runes) for i := 0; i < n; i++ { //TODO: n-1?