У меня есть проблема, которая включает в себя область биологии. Прямо сейчас у меня есть 4 очень больших файла (каждый с 0,1 миллиарда линий), но структура довольно проста, каждая строка этих файлов имеет только 2 поля, оба обоих подписчики для типа гена.
Моя цель - это: разработать эффективный алгоритм, который может достигать следующего: Найдите круг в пределах содержимого этих 4 файлов. Круг определяется как:
field #1 in a line in file 1 == field #1 in a line in file 2 and
field #2 in a line in file 2 == field #1 in a line in file 3 and
field #2 in a line in file 3 == field #1 in a line in file 4 and
field #2 in a line in file 4 == field #2 in a line in file 1
Я не могу подумать о приличном способе решить это, поэтому я только что написал петлю в гнездо-4-х слойном цикле. Я думаю о сортировке их в качестве алфавитного порядка, даже если это может немного помочь, но тогда также очевидно, что компьютерная память не позволит мне загрузить все одновременно. Кто-нибудь может сказать мне хороший способ решить эту проблему в оба времени, так и в пространстве? Спасибо!!