【问题标题】:SortedSet for integers with GNU trove带有 GNU trove 的整数的 SortedSet
【发布时间】:2011-11-22 17:51:09
【问题描述】:

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

但是,我确实有一些 TreeSet,我需要相当快速的更新和查找以及排序迭代 - TreeSet 的主要用例。当然,我会检查一下使用情况,看看我是否可以使用 HashSet 一样好。

什么是 GNU Trove 中合适的 SortedSet 替代品?

谢谢。

【问题讨论】:

  • @Gray:你的评论也是假的。这根本不相关。你不明白OP的问题。这会在您的评论和答案中显示。

标签: java collections gnu treeset sortedset


【解决方案1】:

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

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

更新 #2:

对于许多用例 - 根据您的写入访问模式 - 您应该能够通过仅使用 TIntArrayList 和使用 binarySearch 查找方法(假设数组已排序! )

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

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-07-10
    相关资源
    最近更新 更多