JAVA排序算法实现代码-插入排序
2008-11-19 15:48
585 查看
JAVA排序算法实现代码-插入排序
/** * JAVA排序算法实现代码-插入排序。 * * @author 老紫竹 JAVA世纪网(java2000.net) * */ public class Test { public static int[] a = { 10, 32, 1, 9, 5, 7, 12, 0, 4, 3 }; // 预设数据数组 public static void main(String args[]) { int i; // 循环计数变量 int Index = a.length;// 数据索引变量 System.out.print("排序前: "); for (i = 0; i < Index - 1; i++) System.out.print(" " + a[i] + " "); System.out.println(""); InsertSort(Index - 1); // 选择排序 // 排序后结果 System.out.print("排序后: "); for (i = 0; i < Index - 1; i++) System.out.print(" " + a[i] + " "); System.out.println(""); } public static void InsertSort(int Index) { int i, j, k; // 循环计数变量 int InsertNode; // 欲插入数据变量 for (i = 1; i < Index; i++) // 依序插入数值 { InsertNode = a[i]; // 设定欲插入的数值 j = i - 1; // 欲插入数组的开始位置 // 找适当的插入位置 while (j >= 0 && InsertNode < a[j]) { a[j + 1] = a[j]; j--; } a[j + 1] = InsertNode; // 将数值插入 // 打印目前排序结果 System.out.print("排序中: "); for (k = 0; k < Index; k++) System.out.print(" " + a[k] + " "); System.out.println(""); } } }/** * JAVA排序算法实现代码-插入排序。 * * @author 老紫竹 JAVA世纪网(java2000.net) * */ public class Test { public static int[] a = { 10, 32, 1, 9, 5, 7, 12, 0, 4, 3 }; // 预设数据数组 public static void main(String args[]) { int i; // 循环计数变量 int Index = a.length;// 数据索引变量 System.out.print("排序前: "); for (i = 0; i < Index - 1; i++) System.out.print(" " + a[i] + " "); System.out.println(""); InsertSort(Index - 1); // 选择排序 // 排序后结果 System.out.print("排序后: "); for (i = 0; i < Index - 1; i++) System.out.print(" " + a[i] + " "); System.out.println(""); } public static void InsertSort(int Index) { int i, j, k; // 循环计数变量 int InsertNode; // 欲插入数据变量 for (i = 1; i < Index; i++) // 依序插入数值 { InsertNode = a[i]; // 设定欲插入的数值 j = i - 1; // 欲插入数组的开始位置 // 找适当的插入位置 while (j >= 0 && InsertNode < a[j]) { a[j + 1] = a[j]; j--; } a[j + 1] = InsertNode; // 将数值插入 // 打印目前排序结果 System.out.print("排序中: "); for (k = 0; k < Index; k++) System.out.print(" " + a[k] + " "); System.out.println(""); } } }
运行结果
排序前: 10 32 1 9 5 7 12 0 4
排序中: 10 32 1 9 5 7 12 0 4
排序中: 1 10 32 9 5 7 12 0 4
排序中: 1 9 10 32 5 7 12 0 4
排序中: 1 5 9 10 32 7 12 0 4
排序中: 1 5 7 9 10 32 12 0 4
排序中: 1 5 7 9 10 12 32 0 4
排序中: 0 1 5 7 9 10 12 32 4
排序中: 0 1 4 5 7 9 10 12 32
排序后: 0 1 4 5 7 9 10 12 32
相关文章推荐
- 常用的八种排序算法与Java代码实现
- 详解直接插入排序算法与相关的Java版代码实现
- Java常用的八种排序算法与代码实现
- Java常用的八种排序算法与代码实现
- 十大经典排序算法(含JAVA代码实现)
- 基本排序算法——插入排序java实现
- Java常用的八种排序算法与代码实现
- [排序算法]:Java实现选择排序和插入排序
- 数据结构--排序系列(插入排序,希尔排序,堆排序)Java代码实现
- 八种排序算法Java实现-直接插入和带哨兵的插入排序
- 一遍记住Java常用的八种排序算法与代码实现
- Java常用的八种排序算法与代码实现精解
- Java常用的八种排序算法与代码实现
- Java常用的八种排序算法与代码实现
- 排序算法--插入排序(直接插入排序、折半插入、shell排序)的java实现
- Java实现几种常见排序算法代码
- java实现的各种排序算法代码示例
- Java常用的八种排序算法与代码实现
- Java常用的八种排序算法与代码实现
- 几种常见排序算法的Java代码实现