算法导论-插入排序java实现

    技术2022-05-19  25

    public class InsertionSort {  public static void main(String args[]){   int[] data={     50,49,48,47,46,45,44,43,42,41,     40,39,38,37,36,35,34,33,32,31,     30,29,28,27,26,25,24,23,22,21,     20,19,18,17,16,15,14,13,12,11,     10,9,8,7,6,5,4,3,2,1     };   /*    * key=data[1];i=1;    * {    *   对于data[0..i]里,插入key=data[i]    *   for(j=i-1..0]){    *    如果有data[j]<key.停止    *    否则data[j]->data[j-1]然后j--    *   }    *   j+1就是该插入的位置    *   i++;    * }    */   int key,i,j;   for(i=1;i<data.length;i++){    key=data[i];    for(j=i-1;j>=0;j--){     if(data[j]<key) {      break;     }     else{      data[j+1]=data[j];     }    }    data[j+1]=key;   }   for(i=0;i<data.length;i++){    System.out.print(" "+data[i]);    if(i==0&&i!=0)     System.out.println("");   }  } }


    最新回复(0)