Похоже, что три подходит для небольших строк, но не для больших документов, поэтому не уверен (1-100 страниц текста). Возможно, можно объединить инвертированный индекс с деревом суффиксов, чтобы получить лучшее из обоих миров. Или, возможно, используя b-дерево со словами, хранящимися как узлы, и три для каждого узла. Точно сказать не могу. Хотите знать, какой будет хорошая структура данных (b-дерево, связанный список и т. Д.).
Я думаю о поиске документов, таких как обычные книги, веб-страницы и исходный код, поэтому идея сохранения только слов в инвертированном индексе не совсем верна. Было бы полезно узнать, нужны ли вам альтернативные решения для каждого или есть общее решение, которое работает для них всех, или их комбинация.