服务器程序员札记:JDK 8 Arrays类的排序

jdk8中的Arrays类,使用了并行排序和串行排序。

串行排序对原始数值数组进行排序使用DualPivotQuicksort。这不是一个稳定的排序算法。由于原始数值不存在稳定排序需求,那么这个排序恰好具备了稳定性。

串行排序对对象数组进行排序使用TimSort。这是一个改进了的归并排序算法。采用连续升序或降序区段归并算法。用户也可以通过设置jvm启动参数-Djava.util.Arrays.useLegacyMergeSort=true来屏蔽使用该算法,继续使用传统的归并算法。

你可能感兴趣的:(服务器程序员札记:JDK 8 Arrays类的排序)