排序算法 哪些是稳定的排序算法,哪些是不稳定的

稳定的:

直接插入排序:最坏情况是逆序,时间复杂度是O(N2),最好情况是插入的都是顺序,时间复杂度O(N),空间复杂度O(1)

冒泡排序:时间复杂度O(N2),空间复杂度O(1)

计数排序:时间复杂度O(N+Range),空间复杂度O(range)

不稳定:

希尔排序:时间复杂度O(N1.3),空间复杂度O(1)

直接选择排序:时间复杂度O(N2),空间复杂度O(1)

堆排序:时间复杂度O(N*logN),空间复杂度O(1)

快速排序:时间复杂度O(N*logN),空间复杂度O(logN)