#include
using namespace std;
void ShellSort(int R[],int n)//递增顺序
{
int i,j,d;
int temp;
d=n/2;//d的初值取n/2
while(d>0)
{
for(i=d;i {
j=i-d;
while(j>=0&&R[j+d] {
temp=R[j];//R[j]与R[j+d]交换
R[j]=R[j+d];
R[j+d]=temp;
j=j-d;
}
}
d=d/2;//递减增量
}
}
int main()
{
int i=0;
int R[10]={3,7,6,1,5,9,8,4,2,0};
ShellSort(R,10);
while(i<10)
{
cout< i++;
}
return 0;
}
阅读(1328) | 评论(0) | 转发(3) |