每一趟将一个待排序的记录,按其关键字值的大小插入到已经排好序的部分序列的适当位置上,直到全部插入为止,就是把第一个元素作为哨兵即已经排好的序列,比较第一个元素和第二个元素,是第二个元素插入之后仍然有序。
1 public class Inser { 2 public static void main(String args[]) { 3 int score[] = { 36, 27, 9, 18, 40 }; 4 for (int i = 1; i <= 4; i++) { 5 int t = score[i]; 6 int j = i - 1; 7 for (j = i - 1; j >= 0 && t < score[j]; j--) { 8 score[j + 1] = score[j]; 9 } 10 score[j + 1] = t; 11 12 } 13 print(score); 14 } 15 16 public static void print(int score[]) { 17 for (int i = 0; i < score.length; i++) { 18 System.out.print(score[i] + "\t"); 19 } 20 } 21 }
时间: 2024-10-01 03:43:47