将待排序的数据插入到已经排好序的数组当中去,再插入的过程当中我们需要将以前排好序的数据向后挪动,为新的元素提供空间。(O(n^2))
当我们需要插入的数据越小时,我们后移的次数也会明显增加,对效率产生影响。
public class InsertSort {
public static void main(String[] args) {
int[] arr = new int[] {23,43,54,32,78,77,3};
insertSort(arr);
}
public static void insertSort(int[] arr) {
for(int i = 1;i=0;j--) {
if(arr[j]>arr[j+1]) {
int temp = arr[j];
arr[j] = arr[j+1];
arr[j+1] = temp;
}
}
}
System.out.println(Arrays.toString(arr));
}
}



