插入排序的思想:
从数组的第二个数开始不断的和前面的数依次进行比较。需要备份被比较的元素。如果满足排序要求则continue,否则被比较过得元素的位置需要往后摞。最后空出来的位置放被比较的元素。
其代码如下:
public void insertSort1(int a[]) { for (int i = 0; i < a.length - 1; i++) { int temp = a[i + 1]; int j = i; while (temp < a[j]) {//只有temp<a[j]才有继续比下去的必要 a[j + 1] = a[j]; j--;//1 if (j < 0) {//防止数组越界 break; } } a[j + 1] = temp;//因为1处进行了减1处理所以后面要加1 } print(a); }