在数据结构中,我们研究了算法的稳定性。其中,快速排序,堆排序以及直接选择排序都是不稳定的排序。那么为什么这些是不稳定的排序,判定标准又是什么。需要仔细了解一下。
什么是稳定性?
所谓稳定性,就是假定在待排序记录序列中,存在多个具有相同关键字的记录,如果经过排序以后,这些记录的相对次序保持不变,即原序列中,ri在rj之前,排完序之后,ri依然在rj之前,则称这种排序算法是稳定的,否则就是不稳定的。
所以不稳定的的算法可以通过举例证明,稳定的算法就要进行算法分析了。
举例分析
先以冒泡排序为例,先用代码说明