на данный момент я пытаюсь написать нереальное количество данных в файлы,как сортировать много данных в c?
В основном я генерирую новую структуру данных и записываю их в файл до тех пор, пока файл не станет 1gb большим, и это произойдет для 6 файлов 1gb каждый, структуры небольшие. 8 байтов длиной с двумя двумя переменными id и количеством
Когда я генерирую свои данные, структуры создаются и записываются в файл в порядке количества. , но мне нужны данные для сортировки по id.
помните, что есть 6 гб данных, как я могу сортировать эти структуры там, где значение id, а затем записывается в файл?
или мне нужно сначала записать в файл, а затем отсортировать каждый отдельный файл и как я могу объединить все эти данные в один файл?
Я как бы застрял, потому что хотел бы держать его в массиве, но, очевидно, этот объем данных слишком велик.
Мне нужен хороший способ сортировать много данных? (6gb)
Ключевое слово «external sort» –
http://en.wikipedia.org/wiki/Divide_and_conquer_algorithm –
Какое странное домашнее задание. Является ли это навязанным требованием или проблемой проектирования, возникшей в результате текущей реализации? – 2010-11-16 19:52:46