希尔排序
1. 算法步骤
希尔排序是简单插入排序经过改进后的一个更高效的版本,也称为缩小增量排序。它与插入排序的不同之处在于,它会优先比较距离较远的元素。
算法如下:
1.1 选择一个增量序列,t1,t2......,tk,其中ti>tj,tk=1;
1.2 按增量序列个数k,对序列进行k趟排序;
1.3 每趟排序,根据对应的增量ti,将待排序列分割成若干长度为m的子序列,分别对各子表进行直接插入排序。仅增量因子为1时,整个序列作为一个表来处理,表长度即为整个序列的长度。
希尔排序是简单插入排序经过改进后的一个更高效的版本,也称为缩小增量排序。它与插入排序的不同之处在于,它会优先比较距离较远的元素。
算法如下:
1.1 选择一个增量序列,t1,t2......,tk,其中ti>tj,tk=1;
1.2 按增量序列个数k,对序列进行k趟排序;
1.3 每趟排序,根据对应的增量ti,将待排序列分割成若干长度为m的子序列,分别对各子表进行直接插入排序。仅增量因子为1时,整个序列作为一个表来处理,表长度即为整个序列的长度。
本文标题:十大排序算法之四:希尔排序(Python)
本文链接:https://www.haomeiwen.com/subject/gxjstctx.html
网友评论