//插入排序
//从第一个元素开始,每个数往前插入,
public class InsertSort {
public static void main(String[] args) {
int[] arr = {-2, 52, 525, 5, -22, 0, 2};
insertSort(arr);
System.out.println(Arrays.toString(arr));
}
public static void insertSort(int[] arr) {
int i, j, t;
for (i = 1; i < arr.length; i++) {
t = arr[i];//存储需要插入的元素
j = i - 1;//插入的前一个元素
while (j >= 0 && t < arr[j]) {// t < arr[j]后一个元素比前一个元素小
arr[j + 1] = arr[j];//把小的元素往前移位
j--;
}
arr[j + 1] = t;//把要插入的那个元素插入到合适位置
}
}
}
原文:https://www.cnblogs.com/jasonboren/p/10783954.html