Thursday, August 27, 2009

Shell Sort



# include<stdio.h>



# include<conio.h>




int

k;



shell(int a[],int n)



{



int s,i,j;



i=n/2;



while(i>0)



{



j=i;



do



{



k=j;



j=j+1;








while(k>0)



{




if
(a[k]>a[k+1])



{




s=a[k];




a[k]=a[k+1];




a[k+1]=s;




k=k-i;




}



else
k=0;



}



}while(j!=n);



i=i/2;



}



}








main()



{



int i,a[50],n;



char ch;



l:



clrscr();



printf("\n\n\t\t\tSHELL
SORT\n\t\t\t~~~~~~ ~~~~~\n"
);



printf("\nENTER
THE NO OF ELEMENTS TO BE SORTED: "
);



scanf("%d",&n);



printf("\n\nENTER
THE ELEMENTS:\n "
);



for(i=1;i<=n;i++)



{



printf("\ta[%d] :",i);



scanf("%d",&a[i]);



}



shell(a,n);



printf("\nTHE
SORTED LIST IS:\n~~~~~~~~~~~~~~~~~~~~\n"
);



for(i=1;i<=n;i++)



printf("\n\t\ta[%d] : %d",i,a[i]);



printf("\nDo
you want to continue(Y/N):"
);



scanf("%s",&ch);



if(ch=='y'||ch=='Y')



goto
l;



else



exit(0);



getch();



}






No comments:

Post a Comment