Merge Sort is am efficient comparison based sorting algorithm.
It employs divide and conquer technique.
It divides the array into n unsorted parts each containing one element.
It merges the parts into sorted arrays until the complete array is rebuilt.
It has best, average and worst case complexity of O(n log n).