![]() |
Модераторы: Poseidon |
![]() ![]() ![]() |
|
14SatanA88 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 13.5.2010 Репутация: 1 Всего: 5 |
Доброго времени суток, уважаемые программеры.
Необходимо быстро отсортировать типизированный файл. Тип данных - целое число размером 4 байта. Файл может быть очень большого размера, поэтому задача для меня стала проблемной. В память забрать массив не могу, слишком много памяти надо сожрать. Поэтому очень рассчитываю на Вашу помощь. Вообще хотелось бы увидеть код (уверен, для гуру это как два байта переслать), но в крайнем случае посоветуйте хотя бы эффективный для моей задачи (например, файл содержит миллиард чисел, то есть ориентировочно он 4 Гб) алгоритм сортировки. |
|||
|
||||
t_gran |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 621 Регистрация: 13.11.2007 Где: г.Усть-Илимск Репутация: 33 Всего: 37 |
14SatanA88, на данный момент у меня нет свободного времени, чтобы написать код, но могу поделиться тем, как бы я сделал:
1. Загружаем в оперативную память как можно больше данных (100 Мб и выше). 2. Сортируем данные, используя алгоритм быстрой сортировки. 3. Выгружаем отсортированные данные в отдельный (временный) файл. 4. Возвращаемся в пункт 1, до тех пор, пока не закончится файл, который необходимо обработать. 5. Выполняем слияние всех созданных временных файлов. -------------------- Я знаю, что ничего не знаю© Сократ ![]() |
|||
|
||||
14SatanA88 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 393 Регистрация: 13.5.2010 Репутация: 1 Всего: 5 |
спасибо. уже так и сделал.
|
|||
|
||||
![]() ![]() ![]() |
Правила форума "Центр помощи" | |
|
ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Более подробно с правилами данного раздела Вы можете ознакомится в этой теме. Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Центр помощи | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |