Develop a C program to sort a given set of elements using Me…

#include<stdio.h>

void merge(int [],int ,int ,int );

void part(int [],int ,int );

int main()

{

intarr[30];

inti,size;

printf(“nt——- Merge sorting method ——- nn”);

printf(“Enter total no. of elements : “);

scanf(“%d”,&size);

for(i=0; i<size; i++)

{

printf(“Enter %d element : “,i+1);

scanf(“%d”,&arr[i]);

}

part(arr,0,size-1);

printf(“nt——- Merge sorted elements nn”);

for(i=0; i<size; i++)

printf(“%d “,arr[i]);

return 0;

}

void part(intarr[],intmin,int max)

{

int mid;

if(min<max)

{

mid=(min+max)/2;

part(arr,min,mid);

part(arr,mid+1,max);

merge(arr,min,mid,max);

}

}

void merge(intarr[],intmin,intmid,int max)

{

inttmp[30];

inti,j,k,m;

j=min;

m=mid+1;

for(i=min; j<=mid && m<=max ; i++)

{

if(arr[j]<=arr[m])

{

tmp[i]=arr[j];

j++;

}

else

{

tmp[i]=arr[m];

m++;

}

}

if(j>mid)

{

for(k=m; k<=max; k++)

{

tmp[i]=arr[k];i++;

}

}

else

{

for(k=j; k<=mid; k++)

{

tmp[i]=arr[k];

i++;

}

}

for(k=min; k<=max; k++)

arr[k]=tmp[k];

}

Output:

——- Merge sorting method ——-

Enter total no. of elements :

5

Enter 5 element :

56

34

2

8

99

——- Merge sorted elements ——-

2 8 34 56 99

WRITE MY PAPER


Comments

Leave a Reply