Data Structures(Merge Sort in Data Structures)
Merge Sort:
Working of Merge sort Algorithm:
Let the elements of array are -
According to the merge sort, first divide the given array into two equal halves. Merge sort keeps dividing the list into equal parts until it cannot be further divided.
As there are eight elements in the given array, so it is divided into two arrays of size 4.
Now, again divide these two arrays into halves. As they are of size 4, so divide them into new arrays of size 2.
Now, again divide these arrays to get the atomic value that cannot be further divided.
Now, combine them in the same manner they were broken.
In combining, first compare the element of each array and then combine them into another array in sorted order.
So, first compare 12 and 31, both are in sorted positions. Then compare 25 and 8, and in the list of two values, put 8 first followed by 25. Then compare 32 and 17, sort them and put 17 first followed by 32. After that, compare 40 and 42, and place them sequentially.
In the next iteration of combining, now compare the arrays with two data values and merge them into an array of found values in sorted order.
Now, there is a final merging of the arrays. After the final merging of above arrays, the array will look like -
Now, the array is completely sorted.
Merge sort complexity
1. Time Complexity
Case | Time Complexity |
---|---|
Best Case | O(n*logn) |
Average Case | O(n*logn) |
Worst Case | O(n*logn) |
2. Space Complexity
Space Complexity | O(n) |
Stable | YES |
Implementation of merge sort:
Output:
Comments
Post a Comment