#include<stdio.h>
#include<stdbool.h>
void shellSort(int arr[],int length)
{
int gap, i, j;
int temp;
for (gap = length >> 1; gap > 0; gap >>= 1)
{
for (i = gap; i < length; i++)
{
temp = arr[i];
for (j = i - gap; j >= 0 && arr[j] > temp; j -= gap)
{
arr[j + gap] = arr[j];
}
arr[j + gap] = temp;
}
}
}
int main()
{
int a[] = { 12,232,34,34,45,4,6,56,53,4,423,2 };
int n = sizeof(a) / sizeof(int);
shellSort(a,n);
for (int i = 0; i < n; i++)
{
printf("%d\t",a[i]);
}
getchar();
return 0;
}
009.希尔排序(实现方式参考自中文维基百科)
最新推荐文章于 2021-02-27 08:35:11 发布
本文深入解析了希尔排序算法的实现原理及过程,通过C语言代码示例展示了如何使用希尔排序对整型数组进行排序,包括逐步调整增量序列,直至数组完全有序的过程。
1201

被折叠的 条评论
为什么被折叠?



