一、直接插入排序
定义
1 @Test 2 public void InsertSort(){ 3 int[] a={0,5,3,4,6,2}; 4 int i,j; 5 for( i=1;i<a.length;i++){ 6 if(a[i]<a[i-1]){//将啊[i]插入到有序的子表 7 a[0]=a[i];//设置哨兵 8 for(j=i-1;a[j]>a[0];j--){ 9 a[j+1]=a[j];//记录后移(毛毛虫移动) 10 } 11 a[j+1]=a[0];//插入到正确位置 12 } 13 } 14 System.out.println(Arrays.toString(a)); 15 }
时间复杂度分析