Java限定地图

use*_*889 -5 java collections optimization dictionary data-structures

我正在寻找某种具有固定大小的地图,例如20个条目,但不仅如此,我想只保留最低值,让我说我正在评估某种功能并在我的地图中插入结果(我需要地图,因为我必须保持键值)但我想只有20个最低的结果.我正在考虑排序然后删除最后一个元素,但我需要为数百万条记录做,所以每次添加值时排序效率不高,也许有更好的方法?感谢帮助.

Ada*_*old 7

在java中没有内置的数据结构.您可以尝试在番石榴库中寻找一个.否则考虑使用a LinkedHashMap或a TreeMap.您可以将它包装在您自己的类中以处理限制.

如果您关心效率,请注意TreeMap事实上内部是一棵红黑树,因此put()时间复杂度很高log(n).