【摘要】 Java编程入门与应用 P195——例7-27——直接插入法
程序入口:
/**
* Java编程入门与应用 P195——例7-27——直接插入法
*/public class algorithm { //判断数组是否为空 public static void straightInsertionSort(int[] num) { if (num.lengt…
Java编程入门与应用 P195——例7-27——直接插入法
程序入口:
/**
* Java编程入门与应用 P195——例7-27——直接插入法
*/
public class algorithm { //判断数组是否为空 public static void straightInsertionSort(int[] num) { if (num.length > 0) { StraightInsertionSort(num); } } //直接插入算法 private static void StraightInsertionSort(int[] num){ int temp, j; //默认第一个元素排好序 for (int i = 1; i < num.length; i++) { //默认第一个位置已经排序好了,剩下的元素就是在该元素的左边或者右边 temp = num[i]; //如果后一个数比他前一个数大,则数值往前移动一个,指向后退进行查询位置 for (j = i - 1; j >= 0 && j > temp; j--) num[j + 1] = num[j]; //当循环结束代表temp内的数值找到了位置 num[j + 1] = temp; } }
}
直接插入法:
public class algorithm { //判断数组是否为空 public static void straightInsertionSort(int[] num) { if (num.length > 0) { StraightInsertionSort(num); } } //直接插入算法 private static void StraightInsertionSort(int[] num){ int temp, j; //默认第一个元素排好序 for (int i = 1; i < num.length; i++) { //默认第一个位置已经排序好了,剩下的元素就是在该元素的左边或者右边 temp = num[i]; //如果后一个数比他前一个数大,则数值往前移动一个,指向后退进行查询位置 for (j = i - 1; j >= 0 && j > temp; j--) num[j + 1] = num[j]; //当循环结束代表temp内的数值找到了位置 num[j + 1] = temp; } }
}
结果:
源数组数据:13 15 24 99 4 1
排好序的数组数值:13 15 1 24 99 4
进程已结束,退出代码为 0
感谢观看
再次感谢~
文章来源: blog.csdn.net,作者:乖珑珑,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/qq_51212951/article/details/116271913
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END