时间复杂度分类 1.时间复杂度为O(n^2)的排序算法 冒泡排序选择排序插入排序希尔排序(希尔排序比较特殊,它的性能略优于O(n^2),但又比不上O(nlogn)) 2.时间复杂度为O(nlogn)的排序算法 快速排序归并排序堆排序 3.时间复杂度为线性的排序算法 计数排序桶排序基数排序 稳定性分类 排序算法根据稳定性,划分为稳定排序和不稳定排序。 如果值相等的元素在排序后仍然保持着排序前的顺序,则是稳定排序 如果值相等的元素在排序后打乱了排序前的顺序,则是不稳定排序 1.稳定排序 冒泡排序插入排序归并排序基数排序 2.不稳定排序 选择排序快速排序希尔排序堆排序