Write a program to find Merge Sort Program in C . Merge short is a sorting technique based on divide and conquer technique.

## Merge Sort Program in C

``````#include <stdio.h>

#define max 10

int a[11] = { 10, 14, 19, 26, 27, 31, 33, 35, 42, 44, 0 };
int b[10];

void merging(int low, int mid, int high) {
int l1, l2, i;

for(l1 = low, l2 = mid + 1, i = low; l1 <= mid && l2 <= high; i++) {
if(a[l1] <= a[l2])
b[i] = a[l1++];
else
b[i] = a[l2++];
}

while(l1 <= mid)
b[i++] = a[l1++];

while(l2 <= high)
b[i++] = a[l2++];

for(i = low; i <= high; i++)
a[i] = b[i];
}

void sort(int low, int high) {
int mid;

if(low < high) {
mid = (low + high) / 2;
sort(low, mid);
sort(mid+1, high);
merging(low, mid, high);
} else {
return;
}
}

int main() {
int i;

printf("List before sorting\n");

for(i = 0; i <= max; i++)
printf("%d ", a[i]);

sort(0, max);

printf("\nList after sorting\n");

for(i = 0; i <= max; i++)
printf("%d ", a[i]);
}

``````

## Output

``````
List before sorting
10 14 19 26 27 31 33 35 42 44 0
List after sorting
0 10 14 19 26 27 31 33 35 42 44``````

## List of Top Interview Programs

program to Print Hello World – SOLUTION

print Fibonacci Series in C – SOLUTION

prime number Program – SOLUTION

Check Palindrome number program – SOLUTION

Armstrong number program – SOLUTION

Factorial of a number Program – SOLUTION

How to Reverse String in Java – SOLUTION

Programs for printing pyramid patterns – SOLUTION

Check Leap Year or Not – SOLUTION

program to Binary search – SOLUTION

Implement traverse a Binary tree in Preorder in Java using Recursion – SOLUTION

find GCD of two numbers program – SOLUTION

Program to find in PreOrder, PostOrder and InOrder tree traversals – SOLUTION