优化版的插入排序,插入排序中为前后相互比较进行排序,间隔为1。而希尔则是设置了这个间隔,确保一个正确的间隔,将数据分成一个一个小组,进行插入排序对比。如上图中,先间隔5的进行分组的插入排序,列如,第一分组起始为81,插入35 35对比81 互换,插入41,41对比81 ,互换,41对比35 不变。这样则完成了一个分组的对比。
然后间隔为5的分组插入排序完毕后,数据只是在分组内相对来说进行了排序,整体一组的数据还是没有完全排序完成,则再进行更小间隔分组的排序。直到最后为1间隔的分组排序。这个排序方式的关键点就在于,这样的间隔分组,不会打乱之前排序好的数据顺序
不稳定,由于数据的原因可能导致间隔为1之前的分组排序无效。