На самом деле я готов использовать больше памяти, но так чтоб зааллоцировать её заблаговременно и во время сортировки ничего дополнительно аллоцировать не пришлось. Массивы одинаковой длины.
Возьми новый массив, в котором изначально сохрани числа от 0 до n-1. Затем отсортируй эти величины(которые по факту индексы), используя значения из массива, по которому хочешь сортировать.
Затем перегрупируй изначальные эллементы в соответствии с полученной последовательностью индексов.