数据结构排序算法(图示突然传不上来,后面再更新)
-
排序算法的选择
需要考虑的因素有以下四点:
待排序的记录数目n的大小;
记录本身数据量的大小,也就是记录中除关键字外的其他信息量的大小;
关键字的结构及其分布情况;
对排序稳定性的要求。通俗地讲就是能保证排序前2个相等的数其在序列的前后位置顺序和排序后它们两个的前后位置顺序相同。在简单形式化一下,如果Ai = Aj,Ai原来在Aj位置前,排序后Ai还是要在Aj位置前。
各种排序算法
堆排序、快速排序、希尔排序、直接选择排序是不稳定的排序算法,而基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法。
冒泡排序:邻近的反序就交换,每轮可以选出最大的。相等的就不用交换,所以稳定