1、排序的概念:
就是将一组杂乱无章的数据按照一定的规律(升序或者降序)组织起来
2、排序码
通常数据元素有多个属性域,其中有一个属性域可用来区分元素,作为排序依据,该域即为排序码
3、排序算法的稳定性
如果在元素序列中有两个元素R[i]和R[j],它们的排序码K[i] = K[j],且在排序之前R[i]在R[j]之前 。如果在排序后,元素R[i]仍在R[j]之前,则称这个排序算法是稳定的,否则称这个排序算法是不稳定的。
4、内部排序
数据元素全部放在内存中的排序
5、外部排序
数据元素太多不能同时放在内存中,根据排序过程的要求不能在内外存之间移动数据的排序。
6、常见排序算法
插入排序
直接插入排序:元素集合越接近有序,直接插入排序算法的时间效率越高希尔排序:不稳定,时间复杂度和gap的值有关
选择排序
选择排序
堆排序- 交换排序
冒泡排序
快速排序 - 归并排序
归并排序