排序:给定一组记录的集合{r1, r2, ……, rn},其相应 的关键码分别为{k1, k2, ……, kn},排序是将这些记录 排列成顺序为{rs1, rs2, ……, rsn}的一个序列,使得相应 的关键码满足ks1≤ks2≤……≤ksn( 称为升序) 或 ks1≥ks2≥……≥ksn(称为降序)。
正序:待排序序列中的记录已按关键码排好序。
逆序(反序):待排序序列中记录的排列顺序与排好 序的顺序正好相反。
排序算法的稳定性:假定在待排序的记录集中,存在 多个具有相同键值的记录,若经过排序,这些记录的 相对次序仍然保持不变,即在原序列中,ki=kj且ri在rj 之前,而在排序后的序列中,ri仍在rj之前,则称这种 排序算法是稳定的;否则称为不稳定的。
排序的分类 1. 内排序:在排序的整个过程中,待排序的所有记录 全部被放置在内存中 2. 外排序:由于待排序的记录个数太多,不能同时放 置在内存,而需要将一部分记录放置在内存,另一部 分记录放置在外存上,整个排序过程需要在内外存之 间多次交换数据才能得到排序的结果。