Merge Sort

{Divide - Conquer}

Merge Sort is a Divide and Conquer algorithm. 

It divides input array in to two halves, calls itself for the two halves, and then merges the two sorted halves.

[Link]