Merge sort requires an auxiliary array (as work space) to store it's intermediate result. and it's divide and concur solution so requires stack overhead which is o(logn) so total space complexity : O(n) + O( logn) it's in best case as well as worst case.