Java中的排序集合

问题:

我是Java的初学者请建议可以/应该使用哪些集合来维护Java中的排序列表。我尝试了MapSet,但他们不是我正在寻找的。

回答:

这很迟,但是在JDK中有一个类是为了有一个排序列表的目的。它被命名(与其他Sorted*接口有点不一致)“java.util.PriorityQueue”。它可以排序Comparable<?>或使用Comparator
与使用Collections.sort(...)排序的List的区别在于,通过使用堆数据结构,它将始终保持O(log(n))插入性能的一个部分顺序,而插入排序的ArrayList将是O(n)(即使用二进制搜索和移动)。
然而,与List不同,PriorityQueue不支持索引访问(get(5)访问堆中项目的唯一方法是将它们一次删除(因此名称为PriorityQueue)。

 
 
Code问答: http://codewenda.com/topics/python/
Stackoverflow: Sorted collection in Java

*转载请注明本文链接以及stackoverflow的英文链接

发表评论

电子邮件地址不会被公开。 必填项已用*标注

14 + = 22