Есть ли основанная на диске структура данных ближайшего соседа? - PullRequest
4 голосов
/ 17 ноября 2010

У меня есть набор данных, для которого мне нужно найти K ближайших соседей или всех соседей на расстоянии d. Для набора данных определено пользовательское расстояние, но это не евклидово расстояние.

Ранее я использовал метрических деревьев , в основном это дерево покрова. В этом случае, однако, мой набор данных будет больше, чем доступная память. Итак, есть ли какая-либо структура данных, которую можно использовать для ближайших соседей в наборе данных, хранящемся на диске? Хороший индекс базы данных для этой операции также будет полезен.

1 Ответ

1 голос
/ 17 ноября 2010

Вы можете использовать дерево обложек для хранения указателей на ваш набор данных на диске. Указатель будет содержать относительный номер записи и любую дополнительную информацию из записи, которая позволяет вам проходить по дереву.

...