排序的基本概念与分类
排序的稳定性
由于排序不仅是针对主关键字,那么对于次关键字,因为待排序的记录序列中可能存在两个或两个以上的关键字相等的记录,排序结果可能会存在不唯一的情况,我们给出了稳定与不稳定排序的定义。
假设 kᵢ = kⱼ (1 ≤ i ≤ n , 1 ≤ j ≤ n , i ≠ j ) ,且在排序前的序列中 rᵢ 领先于 rⱼ 领先于 ( 即 i < j ) 。如果排序后 rᵢ 仍领先于 rⱼ ,则称所用的排序方法是稳定的;反之,若可能使得排序后的序列中 rⱼ 领先 rᵢ ,则称所用的排序方法是不稳定的。
内排序与外排序
根据排序过程中待排序的记录是否全部被放置在内存中,排序分为,内排序 和 外排序 。
内排序:是在排序整个过程中,待排序的所有记录全部放置在内存中。
外排序:是由于排序的记录个数太多,不能同时放置在内存,整个排序过程需要在内外存之间多次交换数据才能进行。
对于内排序来说,排序算法的性能主要是受 3 个方面影响:
- 时间性能
- 辅助空间
- 算法的复杂性
根据排序过程中借助的主要操作,我们把内排序分为:插入排序、交换排序、选择排序、并归排序。
排序算法
把七种排序算法分为两大类:
简单算法
改进算法



被折叠的 条评论
为什么被折叠?



