2013-04-15 79 views
0

這個問題與語言無關,更多關於如何實現trie或者嘗試是否適合我的程序假設要做的。 說我有這樣的文字的字符串。在字詞出現時使用trie數據結構

string= "a tale about an ant and an android"; 

爲相應的線索「一個」看起來像這樣

 a(7)  
    / \  
    b(1) n(4) 
    / / \ 
    o(1) t(1) d(2) 
/   \ 
u(1)   r(1) 
/    \ 
t(1)    o(1) 
        \ 
        i(1) 
         \ 
         d(1) 

,我想找到出現每個字的數量。儘管文本中出現了6次,但只有一個用作單詞的例子。 「an」&「和」相同的規則適用。

我希望我的最終頻率計數器,看起來像這樣:

一:發生1次不是7 的:2 和:1 等..

怎麼可能爲我記錄完整單詞的數量?

我正在嘗試處理一個文本的負載,並已訪問this question,它不是我在找什麼。性能是重要的,但記憶效率更好,因爲我解析說萬億字。謝謝,我感謝你的意見。

回答

0

我會推薦一個三元樹,然後在第三個邊緣存儲這個詞。然後你可以在其中實現一個字計數器。

0

你可以做到這一點有兩種方式:

  1. 而是每一個字經過時間的遞增節點,增量只有當它結束還有

  2. 在年底有一個僞信單詞(說空白),只有當單詞結束時纔會增加。