Algorithm and Analysis of the following divide and conquer sorting algorithms: Heap Sort, Merge Sort and Quick Sort