Counting Sort Program:
class Counting_Sort
{
public static void main(String args[])
{
//int ar[]={10,8,12,16,9,7,5,15,14,3};
//int ar[]={10,8,12,16,9,7,5,15,14,32};
//int ar[]={10,16,8,12,15,6,3,9,5,7};
//int ar[]={16,15,14,12};
//int ar[]={4,10,3,5,1};
int ar[]={4,2,3,0,2,4,6,5,3,2,6};
int max=ar[0];
for(int x=0;x<=ar.length-1;x++)
{
if(ar[x]>max)
{
max=ar[x];
}
}
int b[]=new int[ar.length];
counting(ar,b,max);
for(int x=1;x<=b.length-1;x++)
{
System.out.print(b[x] + " ");
}
}
public static void counting(int ar[],int b[],int k)
{
int c[]=new int[k+1];
for(int x=0;x<=k-1;x++)
{
c[x]=0;
}
for(int x=1;x<=ar.length-1;x++)
{
c[ar[x]]=c[ar[x]]+1;
}
for(int x=1;x<=k;x++)
{
c[x]=c[x]+c[x-1];
}
for(int x=ar.length-1;x>=0;x--)
{
b[c[ar[x]]]=ar[x];
c[ar[x]]=c[ar[x]]-1;
}
}
}
0 Comments
Please don't enter any spam link in comment box.
Emoji