java – 使用GNU trove的整数的SortedSet

出于性能原因,我正在将一些代码迁移到GNU trove.

但是,我确实有一些TreeSet,我需要快速更新和查找以及排序的迭代 – TreeSet的主要用例.当然我会过去使用并检查我是否可以使用HashSet同样好.

GNU Trove对SortedSet的适当替换是什么?

谢谢.

解决方法:

更新:我在Sourceforge:http://sourceforge.net/tracker/index.php?func=detail&aid=1631704&group_id=39235&atid=424685上的Trove中找到了相关的功能请求

到目前为止似乎没有SortedSet,并且Trove的好处似乎不那么大:它将为原始类型节省一些内存(并避免装箱),但数据的算法组织可能会相同,它仍然需要入口对象.

更新#2:

对于许多用例 – 取决于您的写访问模式 – ,您应该能够通过使用TIntArrayList并使用binarySearch方法进行查找(假设数组已排序!)来获得不错的性能.

插入排序数组是O(n),因此当您对数组执行大量修改并在每个数组之后进行查询时,这不是一个选项.但是,如果您的更改是批量添加,那么在每次更新后调用sort应该会给您带来惊人的良好性能!

上一篇:Java集合之TreeSet


下一篇:TreeSet&第三方比较器&Map