Здравствуйте. Не могли бы вы подсказать алгоритм, который бы позволил решить следующую задачу:
Имеется список(множество) объектов-записей с различными полями, который находится на диске в виде одного или нескольких очень больших файлов. Каждое поле записи является ключем. Необходимо организовать поиск так, чтобы в результате получить подмножество, содержащее записи, у которых первое поле попадает в свой заданный интервал значений, второе — в свой и т.д. Причем, необходим такой алгоритм, чтобы при одном обращении либо находилась следующая из записей по определенному порядку(допустим, по алфавиту в нескольких полях, если это текст), либо сообщалось, что больше подходящих записей нет. Решение, которое использует сначала поиски по каждому из полей, а потом сравнение результатов поисков с целью нахождения пересечения этих множеств, не годится, т.к. эти множества предполагаются большими, и в оперативную память не помещающимися.