#include<stdio.h>
#include<stdlib.h>
#include<time.h>
void shellsort(unsigned int k[], int xia)
{
int i;
int j;
int flag;
int zhong = xia;
int tmp;
while (zhong > 1)
{
zhong = zhong / 2;
do
{
flag = 0;
for (i = 0; i < xia - zhong; i++)
{
j = i + zhong;
if (k[i] > k[j])
{
tmp = k[i];
k[i] = k[j];
k[j] = tmp;
flag = 1;
}
}
} while (flag != 0);
}
}
void main()
{
unsigned int a[100000];
srand((unsigned int)time(NULL));
for (int i = 0; i < 100000; i++)
{
a[i] = rand()%2147483646;
}
clock_t st, en;
st = clock();
shellsort(a, 100000);
en = clock();
printf("\n%d\n", en - st);
system("pause");
}
C 语言算法排序 希尔
最新推荐文章于 2025-01-27 00:00:00 发布