給定一組屬性和一個比較器,我想生成一個保存哈希碼的命令,提供O(1)訪問。是否有這樣的事情的Java庫,或者我必須自己設計散列函數?是否有一個良好的Java庫用於生成保存O(1)散列碼的訂單,並基於一組屬性和一個比較器?
0
A
回答
2
嘗試:
java.util.LinkedHashMap()
0
沒有單一的集合,將做到這一點。根據具體要求,有幾個選項可供選擇。
爲簡單起見,我只想用一個HashMap進行查找,當我需要排序的數據,我會做值的副本,並對其進行排序:
List<?> sorted = new ArrayList<?>(hashMap.values());
Collections.sort(sorted, Comparator<?>);
這足以滿足大多數現實世界中的使用案例。
你也可以編寫自己的超級容器,內部容納兩個集合中的元素,一個HashMap和一個TreeSet。然後,您可以輕鬆提供訪問方法,以更好地使用該方法。只要確保你添加和刪除都會影響包含的集合。
相關問題
- 1. 比較一個元素是否存在於兩個列表中
- 2. 有沒有一個基於java的API生成器的硒?
- 3. 是否有一個用於生成具體CLR類的IronRuby庫?
- 4. 是否有一個用於生成.ico文件的Python庫?
- 5. 是否有一個用於生成HTML的Emacs Lisp庫?
- 6. 是否有一個用於Python的GUI生成器的IDE?
- 7. 是否有一個用於從Android(Java)類生成UML的好插件?
- 8. 是否有一個很好的PHP CRUD代碼生成器?
- 9. 是否有一個用於PHP或Javascript的良好JSON格式化程序庫?
- 10. 是否有一個用於生成格式良好的非託管C++(類似於CodeDOM)的API?
- 11. 是否有一個易於集成的基於Java的論壇軟件可用
- 12. Perl比較基於密鑰的兩個散列並檢索
- 13. AJV:檢查一個屬性是否等於另一個屬性
- 14. 1個或多個sql表格用於保存關於一個對象的「屬性」的屬性?
- 15. 是否有一個很好的.net庫,可用於合併的HTML的3路比較?
- 16. 是否有一個基於AJAX的基於網絡的Junit TestRunner?
- 17. 是否有一個好的基於Javascript的HTML解析庫可用?
- 18. 請建議一個基於圖形的Java PDF生成器
- 19. LM散列,散列一個長於14個字符的密碼
- 20. 是否有良好的Java支持的Feed生成庫?
- 21. 一個使用Jogl(並非Java2D)的Java的良好繪圖庫
- 22. 組基於一個列的值基於一個組的值,另一個作爲另一個
- 23. 如何保存一個不屬於屬性列表對象的Objective-C對象,或者是否存在比屬性列表更好的方法?
- 24. 生成一個唯一的號碼,並確保它不存在
- 25. 比較基於屬性序列的2個節點集
- 26. 查找是基於總和的從另一個numpy的陣列比較
- 27. 檢查dll是否存在,並基於那個類庫的使用屬性
- 28. 尋找一個JQ過濾器基於一個嵌套屬性
- 29. 訂購一個變量用於生成一個簡單的繪圖
- 30. 是否有可能基於在另一列中的共同屬性值列出的屬性值的一列
LinkedHashMap不提供自定義排序,只是插入順序或最近最少訪問的順序。 – GriffeyDog