今天我需要在java中为我的需求选择最有效的数据结构。
基本上我的算法有一组<Integer, Object>
。
<Integer, Object>
我需要
使用小于x.Integer 由于第二点与算法相关,您选择在Java中使用哪种数据结构?
答案 0 :(得分:0)
您需要NavigableMap
,例如TreeMap
或ConcurrentSkipListMap
注意:TreeMap
不是线程安全的,但是如果为TreeMap的本地副本中的每个线程收集数据并在完成时合并结果,则可能更有效。也就是说,你的争论可以少得多。
注意2:您只需TreeMap
即可执行less than
比较。进一步的改进可能是使用HashMap
来收集每个线程中的数据,并将结果合并到TreeMap
以执行搜索。