直接插入排序的基本操作是将一个记录插入到已经排好序的有序表中,从而得到一个新的,记录数增1的有序表。
举例:
代码
public static void insertSort(int[] test) {
int target = 0;
int j = 0;//记录位置
//假设第一个数已经排好序,被放在了正确的位置上
for (int i = 1; i < test.length; i++) {
j = i;
target = test[i];//设置哨兵
while (j > 0 && test[j-1] > target) {
test[j] = test[j-1];//往后移动
j--;
}
test[j] = target;//找到相应的位置并插入
}
}