Java 插入排序之希尔排序的实例
Java插入排序之希尔排序的实例
Java代码
/*希尔排序(ShellSort)是插入排序的一种。其基本思想是:先取定一个小于n的整数d1作为第一个增量,把文件的全部记录分成d1 *个组,所有距离为d1的倍数的记录放在同一个组中,在各个组中进行插入排序;然后,取第二个增量d2=0&&pointer arrayLength) break; } //与最后的数值交换 intArray[pointer+dataLength]=temp; if(isChange){ System.out.print("Currentsortingresult:"); for(k=0;k 运行后的结果为:
Java代码
将要排序的数组为:8517946 everychangingresult:8518946 Currentsortingresult:7518946 everychangingresult:7518948 everychangingresult:7517948 Currentsortingresult:6517948 指定分割集合的间隔长度为3,对各个集合进行处理后,Currentsortingresult:6517948 everychangingresult:6617948 Currentsortingresult:5617948 everychangingresult:5667948 everychangingresult:5567948 Currentsortingresult:1567948 everychangingresult:1567998 everychangingresult:1567798 everychangingresult:1566798 everychangingresult:1556798 Currentsortingresult:1456798 everychangingresult:1456799 Currentsortingresult:1456789 指定分割集合的间隔长度为1,对各个集合进行处理后,Currentsortingresult:1456789当分割的间隔为1时,变成了直接插入排序。
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!