Asymptotically both MERGE as well as HEAP sort both are correct.

but Constants involved in MERGE SORT (i.e. C*nlogn, C is constant ) is much much larger than Constant involved in HEAP SORT..

Practically HEAP SORT overcome MERGE SORT for very large array.