A cache aware sorting algorithm sorts an array of size $2^{k}$ with each key of size 4 Bytes. The size of cache memory 128 Bytes. and algorithm is a combination of merge sort and insertion sort to exploit locality of reference for the cache memory(i.e. will use insertion sort when problem size equal to cache memory)
Worst case running time of this algo
1)$2^{k}\left [ 2^{5}+log_{2}2^{k-5} \right ]$
2)$2^{k-5}\left [ 2^{5}+log_{2}2^{k-5} \right ]$