Sunteți pe pagina 1din 1

//RADIX SORT

#include<stdio.h>
#include<conio.h>
void main()
{
int a[10],i,j,k,l,m,n,lar=0;
int n1[10],a1[10][10],mod,div=1,temp;
for(i=0;i<10;i++)
{
n1[i]=0;
}
printf("enter the size of array:");
scanf("%d",&n);
printf("\nEnter the elements now\n");
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
if(a[i]>lar)
lar=a[i];
}
mod=1;
for(i=0;lar!=0;i++)
{
mod=mod*10;
for(j=0;j<n;j++)
{
temp=(a[j]%mod)/div;
a1[temp][n1[temp]++]=a[j];
}
div=div*10;
l=0;
for(k=0;k<10;k++)
{
for(m=1;m<=n1[k];m++)
{
a[l]=a1[k][m-1] ;
l++;
}
n1[k]=0;
}
lar=lar/10;
}
printf("\nThe sorted array is:");
for(i=0;i<n;i++)
{
printf("%d ",a[i]);
}
}
op
enter the size of array:8
Enter the elements now
23
56
1
0
2
3
6545
323
The sorted array is:0 1 2 3 23 56 323 6545 Press any key to continue