Re[5]: Отсортировать большой файл
От: uzhas Ниоткуда  
Дата: 17.01.17 08:39
Оценка: 3 (1)
Здравствуйте, makdak, Вы писали:

M>вот:

M>
M>Имеется 1TB файл состящий из целых чисел (одно число на строку). Как отсортировать этот файл самым быстрым образом, если есть только 2GB памяти?
M>


что-то тут набросали ключевые слова и даже фамилии, а паззл лично у меня не сложился
давайте уточним задачу, а потом набросайте хоть примерную идею решения
1) есть текстовый файл размером 1TB (ну я бы сказал не более 1TB), в котором целые числа, умещающиеся в 32 бита перечислены в десятичном представлении. на каждой строке — одно число. между строками — newline (виндовый или линуксовый)
2) нужно в этом файле попереставлять строки так, чтобы числа были отсортированы (без ограничения общности, по возрастанию). то есть inplace
3) есть ограничение на рабочую память проги — 2GB. не забываем, что кроме огромного массива на 2GB могут быть еще рабочие переменные, так что огроменным массивом, который в точности занимает 2GB нам пользоваться нельзя. сколько там занимает рантайм нам побоку, считаем лишь рабочую память нашего алгоритма

не надо только отсылать к чтению томов Кнута, спасибо
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.