Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/sorting/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 创建一个(对象的)SortedSet并向其中插入元素,或者创建一个ArrayList并在之后对其进行排序,速度更快吗?_Java_Sorting_Arraylist - Fatal编程技术网

Java 创建一个(对象的)SortedSet并向其中插入元素,或者创建一个ArrayList并在之后对其进行排序,速度更快吗?

Java 创建一个(对象的)SortedSet并向其中插入元素,或者创建一个ArrayList并在之后对其进行排序,速度更快吗?,java,sorting,arraylist,Java,Sorting,Arraylist,我的档案里有一百万行。从每一行创建一个对象,并将其添加到集合中。必须使用类的自定义compareTo()方法对集合进行排序 目前,我按照读取顺序将对象添加到ArrayList,然后执行Collections.sort() 制作TreeSet会更快吗?这两种方法都有,为什么不试一下呢?可能会慢一些,但试一下大约需要三行代码。@FINDarkside,我现在是初学者,所以我不仅希望看到它的实际应用,而且希望了解它背后的理论。我现在正在尝试。arraylist对于add操作的复杂性为O(n),排序后需

我的档案里有一百万行。从每一行创建一个对象,并将其添加到集合中。必须使用类的自定义
compareTo()
方法对集合进行排序

目前,我按照读取顺序将对象添加到
ArrayList
,然后执行
Collections.sort()


制作TreeSet会更快吗?

这两种方法都有,为什么不试一下呢?可能会慢一些,但试一下大约需要三行代码。@FINDarkside,我现在是初学者,所以我不仅希望看到它的实际应用,而且希望了解它背后的理论。我现在正在尝试。arraylist对于add操作的复杂性为O(n),排序后需要时间n log(n),在同一级别上,treeset内置了自定义比较器,对于add,复杂性为log(n),对于addall()操作,复杂性为O(n log n)看看这个问题: