1.基本思想:通过对未排序的数据逐个插入至合适的位置而完成排序工作
/*在上述代码中,首先将需要插入的元素保存在变量t中变量j表示需要插入的位置,一般就是插入嘚数组的序号 * 设置变量j的值为i-1,表示准备将当前位置(序号为i)的数插入序号为i-1的位置接着,算法程序通过while * 循环来进行判断如果序號为 j元素的数据大于变量 t,则将序号为j的元素向后移同时j减一,以判断前一个数据 * 是否还需向后移通过该while循环找到一个元素的值别t小,该元素是j然后将序号为j的下一个元素进行数据插入操作*/
1.基本思想:基于插入排序,又称为希尔排序或缩小增量排序其排序流程如下:
(1)将有n个元素的数组分为n/2个数字序列,第1个数据和第n/2+1个数据为一对........;
(2)一次循环使每一对序列排好序列;
(3)然后,再变为n/4个序列再次排序;
(4)不断重复上述过程,随着序列减少为最后一个也就完成了整个序列;
当是大量数据且部分有序时,shell排序算法效率较高