Форум программистов, компьютерный форум CyberForum.ru

Наиболее быстрый способ сортировки файла в 1 Тб при ограниченном объёме оперативной памяти - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Наиболее быстрый способ сравнения двух экземпляров структур на предмет одинаковости их полей http://www.cyberforum.ru/cpp-beginners/thread1506522.html
Есть структура, в которой есть несколько int-ов и char-ов, какой имеется наиболее быстрый способ в C/C++ для сравнения двух экземпляров этой структуры на предмет полного совпадения значений полей? Я полагаю, что memcmp? (почленово сравнивать структуры наверное далеко не самый быстрый способ...) struct Item { int a; int b; char c;
C++ Заменить "fopen" в c++ на "TOpenDialog" в Builder6 Здравствуйте дорогие форумчане! 1. Что дано: По результатам чтения 1 части книги Пахомова "C++ Для начинающих" написал программу-конвертер. Состоит она из двух частей. Первая - считывает данные из файла *.txt в массив. Вторая - форматирует данные нужным образом и выводит в новый *.txt файл. Общение с файлами организовывал так: FILE * pFile; pFile = fopen ("input.txt" , "r"); http://www.cyberforum.ru/cpp-beginners/thread1506498.html
Приведение массива char[] (или char* ) в LPCTSTR C++
Задача: пользователь вводит директорию, нужно проверить существует ли эта директория. Функция DirExists проверки работает правильно, но аргумент у этой функции имеет тип LPCTSTR, клиент вводит строку (char или char*) преобразование в LPCTSTR происходит неверно. Просьба помочь преобразовать в LPCTSTR. #include "stdafx.h" #include "stdafx.h" #include <windows.h> #include <stdio.h>...
C++ Формула поворота объекта
Здравствуйте! Подскажите, пожалуйста, формулу, по которой можно рассчитать угол ( в радианах ) поворота объекта так, чтобы он смотрел на другой объект. Что-то не получается объяснить на словах, по этому я прикрепил картинку. Нужно просто синенькую фигуру повернуть на красную. Спасибо.
Visual C++ Вид главного окна приложения MFC http://www.cyberforum.ru/cpp-beginners/thread1506420.html
Не большой знаток MFC, однако читаю в интернете инфу возник следующий вопрос. Как в главном окне сделать область со своей менюшкой, то есть в правой части окна воткнуть (как в билдере align rigth) что-нибудь, типа панельки с кнопками, эдитами и прочим, а в низу окна сделать аналогично (align bottom), только не меню, а окно с табличкой, наверное CListCtrl. То есть сделать эти окна в качестве...
C++ Создание .ехе файла, работающего без подключения библиотек на других компьютерах Привет всем. вопрос такой. как в sublime text 3 создать ехе файл(С++(mingw)), который на других компах будеть работать без подключения используемых библиотек. как я понял такой ехе называется статическим. содержит весь код библиотек в себе. задавал вопрос на разных форумах. ответа пока нет. спасибо. подробнее

Показать сообщение отдельно
ct0r
C++/Haskell
 Аватар для ct0r
1557 / 576 / 39
Регистрация: 19.08.2012
Сообщений: 1,191
Завершенные тесты: 1
30.07.2015, 13:43     Наиболее быстрый способ сортировки файла в 1 Тб при ограниченном объёме оперативной памяти
Цитата Сообщение от ct0r Посмотреть сообщение
сортировка быстрая, за О(n), как раз методом подсчета например
Прошу прощения, не методом подсчета конечно же (много памяти жрет, хороша когда диапазон возможных значений мал), а поразрядная (radix sort).

Цитата Сообщение от Eraston Посмотреть сообщение
То уже смахивает на многопоточность, когда пока 1 поток сортирует, 2ой пишет отсортированный массив, ибо из файлов-блоков без сортировки на выходе неотсортированный массив.
Ну у нас в файлах уже все отсортировано, а блоками мы читаем только для ускорения чтения с диска. Сливаем их по обычному алгоритму, а как только накопится достаточно отсортированных значений - сбрасываем кусок на диск.

Добавлено через 3 минуты
Цитата Сообщение от Butt-Head Посмотреть сообщение
Какой смысл вообще их сортировать? Раз ты всё равно все блоки одновременно читаешь и пишешь в общий файл?
А как ты без их сортировки потом сливать в отсортированный файл будешь? Ты понимаешь, как делается это слияние?

Цитата Сообщение от Butt-Head Посмотреть сообщение
В файле, в который ты пишешь лежит что? Таблица повторений на конкретный кусок?
Нет. Отсортированный кусок.

Цитата Сообщение от Butt-Head Посмотреть сообщение
А это в сумме не будет равно 16-м проходам по террабайту случаем?
Не будет. Можешь проверить.
 
Текущее время: 23:09. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru