По мотивам задачи search реализуйте класс SearchEngine с аналогичной функциональностью.
Класс должен иметь следующие методы:
BuildIndex- обработать текст и построить по нему индексSearch- выполнить поиск релевантных строк
Метод BuildIndex может вызываться неоднократно. После вызова этого метода работа идет с новым текстом.
Вызовы Search, выполненные до индексации, должны возвращать пустой список строк.
Типичный паттерн применения - редкая индексация и частые запросы Search.
Можно считать, что строка с текстом гарантированно не будет удалена между вызовами BuildIndex.
При этом текст может быть настолько большим, что вторая его копия в память не поместится.