您的位置:首页 > 其它

希尔排序

2014-05-05 19:17 302 查看
/*============================================================================
Name        : Exercise.cpp
Author      : Haier
Version     : 1.01
Copyright   : Copyright (c) 2014
Description : ShellSort in C, Ansi-style, Compile by Eclipse
============================================================================*/

#include <stdio.h>
#include <stdlib.h>

void ShellSort(int Array[],int size)
{
int i,j;
int Temp,increment=size;

do
{
increment=increment/3+1;

for(i=increment; i<size; i++)
{
if(Array[i]<Array[i-increment])
{
Temp=Array[i];

for(j=i-increment; j>=0 && Temp<Array[j]; j-=increment)
{
Array[j+increment]=Array[j];
}

Array[j+increment]=Temp;
}
}
}while(increment>1);
}

int main(void) {
int ArrayToSort[5]={2,3,1,5,4};
int i;

ShellSort(ArrayToSort,5);
for(i=0; i<5; i++)
{
printf("%d,",ArrayToSort[i]);
}

return EXIT_SUCCESS;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: