Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/399.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java中是否有类似于TreeSet但允许重复的数据结构?_Java_Algorithm_Data Structures - Fatal编程技术网

Java中是否有类似于TreeSet但允许重复的数据结构?

Java中是否有类似于TreeSet但允许重复的数据结构?,java,algorithm,data-structures,Java,Algorithm,Data Structures,我想保留订单并允许重复。我应该为自己建造一个吗?或者有什么方法可以调整Comparator(我认为remove()和insert()使用的是相同的)?谢谢 我希望remove()在O(logn)中,add()也在O(logn)中 PriorityQueue是一种方法,但它的remove()方法采用O(n)。如果可能的话,我该如何调整呢?你能看到吗?这使用a来提供数据存储,为containsKey、get、put和remove操作提供有保证的日志(n)时间成本 包存储集合中的每个对象以及出现次数。

我想保留订单并允许重复。我应该为自己建造一个吗?或者有什么方法可以调整Comparator(我认为remove()和insert()使用的是相同的)?谢谢

我希望remove()在O(logn)中,add()也在O(logn)中

PriorityQueue是一种方法,但它的remove()方法采用O(n)。如果可能的话,我该如何调整呢?

你能看到吗?这使用a来提供数据存储,为
containsKey
get
put
和remove操作提供有保证的日志(n)时间成本

存储集合中的每个对象以及出现次数。

,也许?与ApacheCommons不同,使用泛型并正确遵守
集合
契约,这使它的使用更加友好

(披露:我对Guava有所贡献。)

TreeMultiset的行为类似于树映射,因此它通过聚合compareTo方法返回0的元素来允许重复。我相信OP想要更像分类列表的东西,据我所知,Guava还没有准备好任何东西。