什么是排序的不稳定性?

如题所述

简单选择排序是不稳定排序。

假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的。

扩展资料:

简单选择排序的最优情况:

最好情况下,即待排序记录初始状态就已经是升序排列了,则不需要移动记录。

对于不稳定的排序算法,只要举出一个实例,即可说明它的不稳定性;而对于稳定的排序算法,必须对算法进行分析从而得到稳定的特性。

排序算法是否为稳定的是由具体算法决定的,不稳定的算法在某种条件下可以变为稳定的算法,而稳定的算法在某种条件下也可以变为不稳定的算法。

基数排序、冒泡排序、直接插入排序、折半插入排序、归并排序是稳定的排序算法。

堆排序、快速排序、希尔排序、直接选择排序是不稳定的排序算法。

参考资料来源:百度百科-简单选择排序

参考资料来源:百度百科-排序算法稳定性

温馨提示:答案为网友推荐,仅供参考
相似回答
大家正在搜