我需要对arrayList进行排序。我可以使用Comparator并覆盖compare函数进行排序。或者我可以自己编写合并排序函数并对ArrayList进行排序。
我在某处读到比较器排序使用冒泡排序算法。由于Merge Sort的复杂性较低,我是否可以使用更容易实现的比较器进行合并排序。
答案 0 :(得分:3)
使用Comparator在ArrayList中强制对象的总排序,并使用Collection.sort(List list,Comparator c)对列表进行排序。 Quoting the Java Documentation对于上面的排序方法,它使用了一个迭代的mergesort算法,该算法改编自Tim Peter的python列表排序(TimSort)。