排序的概念
排序
排序就是将一组杂乱无章的数据按照一定的规律(升序或降序)组织起来。
排序码
通常数据元素有多个属性域,其中有一个属性域可用来区分元素,作为排序依据,该域即为排序码。
- 按主排序码进行排序,排序的结果是唯一的。
- 按照次排序码进行排序,排序的结果不是唯一的。
排序算法稳定性
假定在待排序的记录序列中,存在多个具有相同的关键字的记录,若经过排序,这些记录的相对次序保持不变,即在原序列中,r[i]=r[j],且r[i]在r[j]之前,而在排序后的序列中,r[i]仍在r[j]之前,则称这种排序算法是稳定的;否则称为不稳定的。
- 内部排序:数据元素全部放在内存中的排序。
- 外排排序:数据元素太多不能同时放在内存中,根据排序过程的要求不能在内外存之间移动数据的排序。
常见的排序算法
各种算法比较
视觉感受各排序算法
http://blog.jobbole.com/11745/
各排序算法比较
http://dsqiu.iteye.com/blog/1707423