Sunday, April 19, 2009

merge sorting

//* wap a program of merge sorting *//

#include
#include
void Sort(int Array[],int First,int Last)
{
int a,b,t;
for(a=First;a {
for(b=a+1; b<=Last;b++)
{
if(Array[a] > Array[b])
{
t=Array[a];
Array[a]=Array[b];
Array[b]=t;
}
}
}
}

void main()
{
int Array[10]={89,43,63,43,94,5,34,63,12,3};
int PairSize,Size=9,a;
clrscr();
printf("\n Ur Unsorted List : ");
for(a=0;a<10;a++)
printf(" %d",Array[a]);
//-------------------------------------
PairSize=1;
do
{
PairSize=PairSize*2;
for(a=0;a {
if(a+PairSize<=Size)
Sort(Array,a,a+PairSize);
else
Sort(Array,a,Size);
}
}while(PairSize<=Size);


//-------------------------------------
printf("\n\n\n\n Ur Sorted List : ");
for(a=0;a<10;a++)
printf(" %d",Array[a]);

getch();
}




No comments:

Post a Comment