排序---小结

小结

排序算法的比较

算法 稳定性 时间复杂度 空间复杂度
选择排序 不稳定 O(N*N) O(1)
冒泡排序 稳定 O(N*N) O(1)
插入排序 稳定 O(n)-O(N*N) O(1)
归并排序 稳定 O(NlogN) O(n)
快速排序 不稳定 O(NlogN) O(logn)
堆排序 不稳定 O(NlogN) O(1)
桶排序 稳定 O(N) O(N)

  快速排序是最快的通用排序算法,因为它的常数项比其他算法都要小。

系统排序方法:

  Java 主要排序方法为 java.util.Arrays.sort(),该排序是一个插入排序,当数量级大于60时,如果是对原始数据进行排序,就使用快速排序,如果是对引用类型那么使用归并排序(原因是归并排序稳定)。

猜你喜欢

转载自www.cnblogs.com/yjxyy/p/11104353.html