请教有关shell排序的问题
void Shellsort(int R[],int n){
int i,j,temp,d;
d=n/2;
while(d>0)
{
for(i=d;i<n;i++)
{ j=i-d;
while(j>=0)
{
if(R[j]>R[i])
{temp=R[j];
R[j]=R[i];
R[i]=temp;
j=j-d;
}
else j=-1;
}
}
d=d/2;
}
}
为什么对9 8 7 6 5 4 3 2 1 0排序的结果是1 0 2 3 4 5 6 7 8 9
这个程序哪出了问题啊?