排序算法目录:
1.插入排序
2.希尔排序
3.选择排序
4.冒泡排序
5.快速排序
6.计数排序
7.堆排序
图解希尔排序:
选定一个整数,分组,相同距离的在同一组内,并对每一组进行排序,然后重复上述分组和排序的工作,当到达=1时,所有记录在统一组内排好序。
代码实现:
void ShellSort(int* array, int size)//希尔排序
{
int i = 0;
int j = 0;
int n = 0;
int gap = 0;
for (gap = size / 2; gap > 0; gap /= 2)
{
for (i = 1; i < size; i += gap)
{
n = array[i];
j = i - gap;
while (j >= 0 && n < array[j])
{
array[j + gap] = array[j];
j-=gap;
}
array[j + gap] = n;
}
}
}
来源:CSDN
作者:*空白*
链接:https://blog.csdn.net/weixin_43697119/article/details/104011496