#include<stdio.h>
#include<math.h>
void shell_sort(int n, int a[n]);
int n;
int main()
{
int i , j;
printf("\n enter no of elements \n ");
scanf("%d",&n);
int a[n];
printf("\n enter elements");
for(i=0;i<n;i++)
scanf("%d",&a[i]);
shell_sort(n,a);
return 0;
}
void shell_sort(int n,int a[])
{
int i,j,x,count,gap,temp;
gap = ceil(n/2);
while(gap)
{
for(i=gap;i<n;i++)
{
x = a[i];
for(j=i-gap;j>=0 ; j=j-gap)
{
if(a[j]>x)
{
temp = a[j];
a[j]= a[j+gap];
a[j+gap]= temp;
}
else
break;
}
}
gap = ceil(gap/2);
}
for(i=0;i<n;i++)
{
printf("\n %d",a[i]);
}
}
#include<math.h>
void shell_sort(int n, int a[n]);
int n;
int main()
{
int i , j;
printf("\n enter no of elements \n ");
scanf("%d",&n);
int a[n];
printf("\n enter elements");
for(i=0;i<n;i++)
scanf("%d",&a[i]);
shell_sort(n,a);
return 0;
}
void shell_sort(int n,int a[])
{
int i,j,x,count,gap,temp;
gap = ceil(n/2);
while(gap)
{
for(i=gap;i<n;i++)
{
x = a[i];
for(j=i-gap;j>=0 ; j=j-gap)
{
if(a[j]>x)
{
temp = a[j];
a[j]= a[j+gap];
a[j+gap]= temp;
}
else
break;
}
}
gap = ceil(gap/2);
}
for(i=0;i<n;i++)
{
printf("\n %d",a[i]);
}
}
No comments:
Post a Comment