题目

下面的排序算法中,稳定是_
(1)选择排序法
(2)快速排序法
(3)插入排序法
(4)堆排序法
每日一题 day9.001.png

答案

(3)插入排序法

解析

  • 选择排序的实现中,需要选择未排序部分最小的元素,与当前元素交换位置,所以不稳定。
  • 插入排序的实现中,是通过移动来实现的,保证顺序不变。
  • 快速排序,也是找到比 pivot 小/大的元素,交换位置,所以不稳定。
  • 堆排序法,可以理解为一棵二叉树,在插入的过程中需要交换父子节点的元素,因此不稳定。

image.png