Я хочу отсортировать большой массив строк (в частности, File.list()
, который я не могу экстернализировать или уменьшить) без использования [много] дополнительной памяти.
Arrays.sort()
говорит, что выполняет сортировку слиянием, а википедия говорит, что некоторые реализации выделяют размер исходного массива для хранения отсортированного вывода. (Кажется, это подтверждается ссылкой System.arraycopy
в методе).
Есть ли алгоритм сортировки на месте, который я могу использовать вместо этого, который эффективен для памяти?