具体算法描述如下:
从第一个元素开始,该元素可以认为已经被排序;
取出下一个元素,在已经排序的元素序列中从后向前扫描;
如果该元素(已排序)大于新元素,将该元素移到下一位置;
重复步骤3,直到找到已排序的元素小于或者等于新元素的位置...希尔排序也是一种插入排序,它是简单插入排序经过改进之后的一个更高效的版本,也称为缩小增量排序,同时该算法是冲破O(n2)的第一批算法之一。...基本思想
设待排序元素序列有n个元素
1.取一个整数increment(小于n)作为间隔将全部元素分为increment个子序列
2.每间隔increment取一个元素,并放在同一个子序列中,对每个子序列实行直接插入排序...3.缩小间隔increment
4.重复上述子序列划分和排序工作。直到increment=1,即所有元素放在同一个子序列中进行最后的排序。...3.我们再取increment为:2/1 = 1,则此时:{a0,a1,a2,a3,a4,a5,a6,a7,a8,a9}所有元素都在同一个子序列中。