希尔排序详细讲解?希尔排序的步长怎么取?

21分钟前阅读1回复0
路人甲
路人甲
  • 管理员
  • 注册排名2
  • 经验值292580
  • 级别管理员
  • 主题58516
  • 回复0
楼主
希尔排序稳定吗?希尔排序详细讲解?希尔排序的实质就是分组插入排序,该方法又称缩小增量排序,先将整个待排元素序列分割成若干个子序列,分别进行直接插入排序,然后依次缩减增量再进行排序,再对全体元素进行一次直接插入排序。希尔排序的步长怎么取?希尔排序的思想是:先选择一个小于排序数据个数n的整数di(称为步长,对每组的元素进行直接插入排序,即将需要排序的数据插入到已经排序好的序列中。完成整个数据的排序。
  1. 希尔排序详细讲解?
  2. 希尔排序的步长怎么取?
  3. 希尔排序稳定吗?

希尔排序详细讲解?

希尔排序的实质就是分组插入排序,该方法又称缩小增量排序,因希尔于1959年提出而得名。

希尔排序详细讲解?希尔排序的步长怎么取?

该方法的基本思想是:先将整个待排元素序列分割成若干个子序列,由相隔某个“增量”的元素组成的,分别进行直接插入排序,然后依次缩减增量再进行排序,待整个序列中的元素基本有序,增量足够小时,再对全体元素进行一次直接插入排序。

希尔排序的步长怎么取?

    希尔排序的思想是:先选择一个小于排序数据个数n的整数di(称为步长,一般为小于n的质数),将间隔di的数为一组,对每组的元素进行直接插入排序,即将需要排序的数据插入到已经排序好的序列中。当步长为1时,完成整个数据的排序。排序的流程为:

1、根据步长的个数,对于每个步长进行分组;

希尔排序稳定吗?

不稳定的。

由于多次插入排序,我们知道一次插入排序是稳定的,不会改变相同元素的相对顺序,但在不同的插入排序过程中,相同的元素可能在各自的插入排序中移动,最后其稳定性就会被打乱,所以希尔排序是不稳定的。

0
回帖

希尔排序详细讲解?希尔排序的步长怎么取? 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息