//3.直接插入排序
void InsertSort(int* a, int n, int step = 1)
{
for (int i = step; i < n; ++i) {
int j = i - step;
if (a[i] < a[j]) { // 比较前后数字大小
int tmp = a[i]; // 作为临时存储
//a[i] = a[j];
while (a[j] > tmp) { // 寻找tmp的插入位置
a[j + step] = a[j];
j -= step;
}
a[j + step] = tmp; // 插入tmp
}
}
}
直接插入排序
最新推荐文章于 2024-03-31 14:33:42 发布