将一个记录插入到一个已经排序好的表中,以得到一个记录增一的有序表。并且最关键的一点就是它把比当前元素大的记录都往后移动,用以腾出“自己”该插入的位置。当n-1趟插入完成后该记录就是有序序列
void directInsertSort(int *data,int count);
void directInsertSort(int *data,int count) {
int i; //待排序数列下标
int j; //插入点下标
int t; //移动数据时的下标
int temp;
for(i = 1;i < count;i++) {
temp = data[i];
for(j = 0;j < i && data[j] < data[i];j++) ;
for(t = i - 1;t >= j;t--){
data[t+1] = data[t];
}
data[j] = temp;
}
}