Реализовать свой простой поиск на java, который может работать в 2 режимах:
- Индексация: на вход подаётся название файла(директории) индекса и исходный файл, где каждая строка является отдельным документом в индексе, и происходит построение индекса, который записывается в файл(директорию).
- Поиск: на вход подаётся название файла индекса и запрос, на выходе получаем список документов подходящих под этот запрос.
Начать можно с написания наивной реализации инвертированного индекса и запросов по одному слову. В итоге должна получиться jar-ка, которая может работать в 2 режимах. Сдавать в виде PR к этому репозиторию с инструкцией для сборки и запуска, и списком что было реализованно.
- написать реализацию запросов AND и NOT
- написать реализацию фразовых запросов
- применить оптимизации при построении индекса из лекции
- написать реализацию OR с задаваемым минимальным количеством вхождений (пример: есть запрос java OR scala OR kotlin, мы хотим все документы где есть минимум 2 слова)
31.01.2019 23:59
не использовать сторонние библиотеки полнотекста (lucene)