#include<iostream.h>
#include<conio.h>
int x[10],z[10];
void mergesort(int lb,int m,int ub)
{
int k=0;int j=lb;int i=m+1;
while(j<=m)
{
while(i<=ub)
{
if(x[j]>x[i])
{
z[k]=x[i];
i++;k++;
}
else
{
z[k]=x[j];
j++;k++;
break;
}
if(j>m)
break;
}
if(i>ub)
break;
}
while(i<=ub)
{
z[k]=x[i];
i++;
k++;
}
while(j<=m)
{
z[k]=x[j];
j++;
k++;
}
cout<<"\nAfter Merging\n";
for(j=lb,i=0;j<=ub;i++,j++)
{
x[j]=z[i];
cout<<" "<<x[j];
}
}void merge(int lb,int ub)
{
int m=(lb+ub)/2;
if(lb<ub)
{
merge(lb,m);
merge(m+1,ub);
mergesort(lb,m,ub);
}
}
void main()
{
cout<<"Program on Merge Sorting\n";
cout<<"Enter Size";
int s;
cin>>s;
cout<<"Enter ";
for(int i=0;i<s;i++)
{
cin>>x[i];
}
merge(0,s-1);
cout<<"\nFinally Sorted Array\n";
for(i=0;i<s;i++)
{
cout<<" "<<x[i];
}
getch();
}
#include<conio.h>
int x[10],z[10];
void mergesort(int lb,int m,int ub)
{
int k=0;int j=lb;int i=m+1;
while(j<=m)
{
while(i<=ub)
{
if(x[j]>x[i])
{
z[k]=x[i];
i++;k++;
}
else
{
z[k]=x[j];
j++;k++;
break;
}
if(j>m)
break;
}
if(i>ub)
break;
}
while(i<=ub)
{
z[k]=x[i];
i++;
k++;
}
while(j<=m)
{
z[k]=x[j];
j++;
k++;
}
cout<<"\nAfter Merging\n";
for(j=lb,i=0;j<=ub;i++,j++)
{
x[j]=z[i];
cout<<" "<<x[j];
}
}void merge(int lb,int ub)
{
int m=(lb+ub)/2;
if(lb<ub)
{
merge(lb,m);
merge(m+1,ub);
mergesort(lb,m,ub);
}
}
void main()
{
cout<<"Program on Merge Sorting\n";
cout<<"Enter Size";
int s;
cin>>s;
cout<<"Enter ";
for(int i=0;i<s;i++)
{
cin>>x[i];
}
merge(0,s-1);
cout<<"\nFinally Sorted Array\n";
for(i=0;i<s;i++)
{
cout<<" "<<x[i];
}
getch();
}
No comments:
Post a Comment