我正在使用JDK-8(x64)。对于Arrays.sort
(原始),我在Java文档中发现了以下内容:
排序算法是Vladimir Yaroslavskiy,Jon Bentley和Joshua Bloch编写的Dual-Pivot Quicksort。
对于Collections.sort
(对象),我找到了“ Timsort”:
此实现是一个稳定的,自适应的,迭代的mergesort ...该实现将指定的列表转储到数组中,对数组进行排序,然后遍历列表,从数组中的相应位置重置每个元素。
如果Collections.sort
使用数组,为什么不调用Arrays.sort
或使用双轴QuickSort?为什么要使用Mergesort?