void shellsort(int A[], int n)
{
int i,j,temp,dk;
for(dk=n/2;dk>=1;dk=dk/2)
{
for(i=dk+1;i<=n;i++)
{
if(A[i]<A[i-dk])
{
temp=A[i];
j=i-dk;
while(temp<A[j]&&j>=1)
{
A[j+dk]=A[j];
j=j-dk;
}
A[j+dk]=temp;
}
}
}
}