Ответы пользователя по тегу Алгоритмы
  • Быстрый алгоритм поиска

    dbmaster
    @dbmaster
    Очень интересная и актуальная задача! Спасибо!

    Про ограничения по памяти и серверов ничего не сказано, поэтому моё решение след:
    • присвоить каждому объекту номер 1,2,3,4,5
    • строим независимый индекс по каждому атрибуту (если значения атрибута совпадают, сортируем по номеру объекта)

    запрос разбиваем на части и по каждому индексу можем за o(log(n)) = o(log(100M))=19 операций узнать сколько объектов будет в результате если будем фильтровать только по этому одному атрибуту.

    дальше можно сделать выборку по одному атрибуту и проверять все остальные условия
    или
    мержить списки номеров объектов
    Ответ написан