概述
本小节最重要的一个点为 排序算法的稳定性
概念:相同键值的两个记录在排序前后相对位置的变化情况。
n个记录的序列为{R1,R2,…,Rn} ,其对应的键值序列为{k1,k2,…,kn},假设ki = kj,若在排序前的序列中Ri在Rj之前,即i<j,经过排序后,Ri仍在Rj之前,则称所用的排序方法是稳定的;反之,则称所用的排序方法是不稳定的。
稳定性是排序方法本身的特性,与数据无关。也就是说,一种排序方法如果是稳定的,则对所有的数据序列都是稳定的。
内部排序的方法很多,自考教材主要讨论了四种,分别是插入排序、交换排序、选择排序和归并排序
插入排序
常见的插入排序方法有 直接插入排序
、折半插入排序
、表插入排序
、希尔排序
直接插入排序
通过案例说明,查看直接排序方法
应用直接插入排序方法,对序列{45,38,66,90,88,10,25,45}所示的一组键值进行排序,过程可参照下图所示