我應該在Java中使用哪種數據結構來存儲其句子中每個單詞的詞頻以及它在另一個句子中的頻率,即成對。每個節點必須有兩個自己的頻率和一個相鄰的句子。對於文檔中的每一對句子都必須重複這一點。它用它稍後找出標準餘弦相似度。在Java中使用的數據結構
-1
A
回答
1
這是怎樣的一個鏈表:
public class SentenceOccurencies {
// Key is the word, Value the count
public Map<String, Integer> occurrencies = new HashMap<String Integer>();
public SentenceOccurrencies neighbour;
}
隨意添加訪問器/增變等。
0
倒排索引是信息檢索技術的最佳存儲。所以你有一個從單詞到地圖的地圖,以及多少次。
因此,對於兩句話:
敏捷的棕色狐狸跳過了懶狗。 當狐狸跳起來時,懶狗睡了。
變爲:
brown -> {1:1}
dog -> {1:1, 2:1}
fox -> {1:1, 2:1}
jumped -> {1:1, 2:1}
lazy -> {1:1, 2:1}
over -> {1:1}
quick -> {1:1}
slept -> {2:1}
the -> {1:2, 2:2}
while -> {2:1}
然後你可以隨便去通過地圖和提取所需的信息。這種結構的好處在於,您可以高效地存儲多於兩個句子!
+0
謝謝!請你詳細說明代碼或數據結構。而且,在這之後,我如何找到這兩句話的標準餘弦相似? – user1080383 2012-02-06 11:02:27
+2
我真的認爲你應該嘗試自己實現這一點,否則你什麼都不會學。我已經給了你足夠的信息來開始 - 如果你發現你已經做了什麼。 – Robert 2012-02-06 11:06:56
相關問題
- 1. 使用java的數據結構
- 2. 數據結構用java
- 3. Java數據結構
- 4. Java數據結構
- 5. 在使用Java流的複雜數據結構中搜索
- 6. 在Java中創建類似於數據結構的結構
- 7. 的Java HasMap數據結構
- 8. 在Java中映射數據結構
- 9. 在Java中創建數據結構
- 10. 在java中實現數據結構
- 11. 在C++中使用Matlab數據結構?
- 12. 如何使用Java/Scala在內存中保存數據結構
- 13. 我應該在Java中使用哪種數據結構?
- 14. 我可以在Java中使用哪種數據結構?
- 15. Java - 利用可用的數據結構或創建新的數據結構
- 16. Java中的等效數據結構?
- 17. Java中的持久數據結構
- 18. Java中的Class Dictionary(數據結構)
- 19. Java中的數據結構和算法
- 20. Java中的分佈式數據結構
- 21. 比較java中的結構化數據
- 22. Java中的SortedBiTreeMultimap數據結構?
- 23. 像java中的數據結構樹
- 24. Java中的Trie數據結構
- 25. Java中contains()的最快數據結構?
- 26. Java中的複雜數據結構
- 27. 使用內存中的數據結構
- 28. DBMS中使用的數據結構
- 29. Java對象 - 數據結構
- 30. 結構java樹型數據
作業嗎? – Nishant 2012-02-06 10:18:16
「鄰居句子」是什麼意思?這是否意味着左邊和右邊的一句話?或者它意味着比現在的其他任何陳述? – Apurv 2012-02-06 10:40:33
它意味着比現在的每一個其他的陳述! – user1080383 2012-02-06 10:59:37