排序
排序简介
排序:就是将一组无序的记录序列按照某种逻辑顺序重新排序,调整为有序的记录序列的过程。
简单的说,对于一组记录序列而言,就是根据记录的关键字递增顺序或者递减关系,将记录的次序进行重新排列,使得原来一组次序任意的记录序列转变为按其值有序排列的一组记录序列。
排序算法分类
由于待排序的记录数量不同,使得排序过程中涉及的存储器不同,可将排序算法分为两大类:
- 内部排序算法:当参加排序的数据量不大时,在排序过程中将全部记录存放在内存中处理,这种算法称为内部排序算法。
- 外部排序算法:当参加排序的数据量较大时,以致于内存不足以一次存放全部记录,在排序过程中需要通过内存与外存之间的数据交换来达到排序目的,这种排序算法称为外部排序算法。
对于具有多个相同值的记录序列来说,如果采用的排序算法使得排序前后拥有相同值记录的相对位置保持不变,则称此排序为稳定的,否则就是不稳定的。相应的排序算法可以分为以下两大类:
- 稳定性排序算法:对于值相同的两个元素,排序前后的先后次序不变,这种方法称为 稳定性排序方法。
- 非稳定性排序算法:对于值相同的两个元素,排序前后的先后次序改