稳定上指排序前相等的数据的位置关系在排序后不发生变化
直接插入排序是稳定的。希尔排序是特殊的插入排序,但因为交换值的过程中有跳跃式的交换,所以不稳定,如下图红6和蓝6在排序后发生了变化,6个数的序列,dk先取3来看
如何使希尔排序具有稳定性
所以说希尔排序是不稳定的,如何把他改进为稳定的呢,只需在原代码上加两段代码即可
如何使希尔排序具有稳定性
具体代码作用说明在图中如何使希尔排序具有稳定性

这样每次发生交换都会有检测并且进行稳定化操作,这样下来就可使希尔排序稳定了

相关文章:

  • 2021-06-14
猜你喜欢
  • 2022-12-23
  • 2022-02-09
  • 2022-12-23
  • 2022-03-04
  • 2021-11-05
  • 2021-07-07
  • 2022-12-23
相关资源
相似解决方案