排序总结

常见内排序算法:

选择合适的排序方法应综合考虑以下因素:

1、待排序的记录数目n

2、记录的大小(规模)

3、关键字的结构及其初始状态

4、对稳定性的要求

5、语言工具的条件

6、存储结构

7、时间和辅助空间的复杂度等

不同条件下,排序算法的选择:

1、若n较小(n<50)可采用直插法和简单选择法

2、若文件初始状态基本有序(正序),则应选用直插法、冒泡或随机的快速排序为宜

3、若n较大、则应采用时间复杂度为o(nlgn)的排序方法:堆排序、归并排序、快速排序

   快速排序是目前基于比较的内部排序中被认为是最好的方法,当待排序的关键字是随机分布的,快速排序的平均时间最短

     堆排序需要的辅助空间少于快速排序,并且不会出现快排可能出现的最坏情况

原文地址:https://www.cnblogs.com/sooner/p/2683920.html