Mergesort (Arr, L, R) : Write A C++ Program To Sort The Given Data Using Merge Sort
Mergesort (Arr, L, R) : Write A C++ Program To Sort The Given Data Using Merge Sort
Mergesort (Arr, L, R) : Write A C++ Program To Sort The Given Data Using Merge Sort
PRACTICAL NO. 7
OBJECTIVE
Write a C++ program to sort the given data using merge Sort.
ALGORITHM
MergeSort(arr[], l, r)
If r > l
1. Find the middle point to divide the array into two halves:
middle m = (l+r)/2
2. Call mergeSort for first half:
Call mergeSort(arr, l, m)
3. Call mergeSort for second half:
Call mergeSort(arr, m+1, r)
4. Merge the two halves sorted in step 2 and 3:
Call merge(arr, l, m, r)
FLOWCHART
CODE
Amitabh Kumar
16Bcs1181 1|Page
CHANDIGARH UNIVERSITY DATA STRUCTURE LAB (CSP-209)
#include <iostream>
using namespace std;
void Merge(int a[], int low, int high, int mid)
{int i=low, j=mid+1, k=0, temp[high-low+1];
while (i <= mid && j <= high)
{if (a[i] < a[j])
{temp[k] = a[i];
k++;
i++;}
else
{temp[k] = a[j];
k++;
j++;
}
}
while (i <= mid)
{temp[k] = a[i];
k++;
i++;
}
while (j <= high)
{temp[k] = a[j];
k++;
j++;
}
Amitabh Kumar
16Bcs1181 2|Page
CHANDIGARH UNIVERSITY DATA STRUCTURE LAB (CSP-209)
Amitabh Kumar
16Bcs1181 3|Page
CHANDIGARH UNIVERSITY DATA STRUCTURE LAB (CSP-209)
return 0;
}
OUTPUT
Amitabh Kumar
16Bcs1181 4|Page