先上图
稳定性
值一样的2个树,再排序过后的相对位置是否改变
意义:
- 如果是单纯的数字排序,稳定性没有意义。
- 如果排序的内存是复杂对象的多个数字属性,并且这些数字属性是有意义的,则需要用到稳定行算法。
例如;排序的对象是一组书,他们是按价格从高到低排序的。如今要求按销量排序,并排序过程中同销量的书保持价格从高到低的排序,此时则用到稳定性排序。(如果没有保持初始排序条件的话,稳定性算法也毫无意义)
In-place sort
- In-place sort(不占用额外内存或占用常数的内存):插入排序、选择排序、冒泡排序、堆排序、快速排序。
- Out-place sort:归并排序、计数排序、基数排序、桶排序。