import java.util.Arrays;
/**
* @author admin
* @version 1.0.0
* @ClassName InsertSort.java
* @Description TODO
* @createTime 2021年08月16日 16:19:00
* //插入排序
*/
public interface InsertSort {
public static void main(String[] args) {
int[] arr=new int[]{23,4,36,42,76,31,1,34,21,64,86};
System.out.println(Arrays.toString(arr));
insertsort(arr);
System.out.println(Arrays.toString(arr));
}
public static void insertsort(int[] arr){
for (int i = 1; i <arr.length; i++) {//不管第一个数。
if (arr[i]<arr[i-1]){
int t=arr[i];//将该数存起来,因为挪的时候arr[i]在变、
int j;
for ( j = i-1; j>=0&&t<arr[j]; j--) {
arr[j+1]=arr[j];//依次将该数与前面比他大的数换位置,即挪过去。
}
arr[j+1]=t;//上一个循环结束前j还自减了1,所以要用j+1;
}
}
}
}