插入排序 2019-11-22 算法 Java 评论 插入排序具体算法描述如下: 从第一个元素开始,该元素可以认为已经被排序; 取出下一个元素,在已经排序的元素序列中从后向前扫描; 如果该元素(已排序)大于新元素,将该元素移到下一位置; 重复步骤3,直到找到已排序的元素小于或者等于新元素的位置; 将新元素插入到该位置后; 重复步骤2~5。 代码我的 1234567891011121314//直接插入排序 从大到小 public void insertSort(int[] a) { for(int i=1; i<a.length; i++){ for (int j=i; j>0; j--){ if (a[j-1] < a[j]) { int temp = a[j-1]; a[j-1] = a[j]; a[j] = temp; } } } print(a); } 123456789101112131415//漂亮的代码 从小到大 public void insertNB(int[] a) { int insertNum; for(int i=1; i<a.length; i++) { insertNum = a[i]; int j = i - 1; while (j>=0 && a[j]>insertNum) { a[j+1] = a[j]; j--; } a[j+1] = insertNum; } print(a); }