阅读:1811次
评论:0条
更新时间:2014-03-26
1, 直接插入排序
基本思想:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。
输出内容:
基本思想:在要排序的一组数中,假设前面(n-1)[n>=2] 个数已经是排好顺序的,现在要把第n个数插到前面的有序数中,使得这n个数也是排好顺序的。如此反复循环,直到全部排好顺序。
package test; public class Sort { public static void main(String[] args) { insertSort(); } public static void insertSort() { int a[] = { 9, 8, 2, 6, 4, 0, 3, 7, 5 }; for (int k = 0; k < a.length; k++){ System.out.print(a[k] + "--"); } System.out.println(); int temp = 0; for (int i = 1; i < a.length; i++) { int j = i - 1; // 只关心当前索引前面的内容 temp = a[i]; for (; j >= 0 && temp < a[j]; j--) { // 如果比我小,就往后挪 a[j + 1] = a[j]; } a[j + 1] = temp; // 我要占的位置,取决与对比到哪了 for (int k = 0; k < a.length; k++){ System.out.print(a[k] + "--"); } System.out.println(); } } }
输出内容:
9--8--2--6--4--0--3--7--5-- 8--9--2--6--4--0--3--7--5-- 2--8--9--6--4--0--3--7--5-- 2--6--8--9--4--0--3--7--5-- 2--4--6--8--9--0--3--7--5-- 0--2--4--6--8--9--3--7--5-- 0--2--3--4--6--8--9--7--5-- 0--2--3--4--6--7--8--9--5-- 0--2--3--4--5--6--7--8--9--
评论 共 0 条 请登录后发表评论