任何依赖成对元素比较的通用排序算法都具备Ω(nlogn)
时间复杂度。
概述
排序的分类:内部排序和外部排序
内部排序:数据记录在内存中进行排序
外部排序:因排序的数据量大,需要内存和外存结合使用进行排序
这里总结的八大排序是属于内部排序:
当n比较大的时候,应采用时间复杂度为nlog2n
的排序算法:快速排序、堆排序或归并排序。
其中,快速排序是目前基于比较的内部排序中被认为最好的方法,当待排序的关键字是随机分布时,快速排序的平均时间最短。
各种排序的稳定性,时间复杂度和空间复杂度总结:
对n较大的排序记录。一般的选择都是时间复杂度为 O(nlog2n) O ( n l o g 2 n ) 的排序方法。