首先,Shell是发明这个算法的人名,不是这个算法的思想或者特点. 希尔排序,也称为增量递减排序.基本思路,是把原来的序列,等效视为一个矩阵的形式.矩阵的列数,也称为宽度或者增量,记为w. 假设数组A[n]以及矩阵B[][],对于两者的对应关系,可以记为A[k]=B[k/w][k%w].也就是说,A中的元素会按照先行后列的顺序排列,即先左后右.先上后下的顺序放入矩阵B中. 对于增量或者说矩阵的宽度w,会有许多策略进行选择.假设w={1,2,4,8,16,32...}.从w的集合中选择小于数组元素…