排序算法详解
文章目录
- 一、常见排序算法
- 1、插入排序
- 2、选择排序
- 3、交换排序
- 4、归并排序
- 5、非比较排序
- 二、排序算法稳定性
- 三、排序算法复杂度
一、常见排序算法
1、插入排序
- 插入排序
- 希尔排序
2、选择排序
- 选择排序
- 堆排序
3、交换排序
- 冒泡排序
- 快速排序
4、归并排序
归并排序
5、非比较排序
- 计数排序
- 基数排序
二、排序算法稳定性
排序码:通常一个元素有多个属性域,其中有一个属性域可以用来作为排序依据,该域即为排序码
如果元素序列中有两个元素 R[i] 和 R[j],它们的排序码 K[i] == k[j],排序前元素 R[i] 在 R[j] 前面,如果排好序后,元素R[i] 仍在 R[j] 前面,则称这个排序算法是稳定的,否则称这个排序算法是不稳定的