Хранение пункта № в Трие - PullRequest
       11

Хранение пункта № в Трие

0 голосов
/ 08 декабря 2018

Я строю Trie на Java.При поиске по ключевому слову в базе данных необходимо также указать, в каких абзацах ключевое слово появляется в тексте.Кто-нибудь знает, как я могу сохранить номер абзаца в дереве со словом?Индексирую ли я весь текст, а затем помещаю его в файл?Я немного озадачен!

1 Ответ

0 голосов
/ 09 декабря 2018

Обычно дерево представляет собой дерево, построенное с использованием некоторого типа узла, у которого есть список дочерних узлов того же типа, где каждый дочерний узел снова имеет список и так далее.Теперь каждому узлу в дереве соответствует ровно одно слово, и наоборот, поэтому, если вы сделаете дополнительное поле в типе узла, вы можете хранить там дополнительную информацию, такую ​​как номер абзаца.

Чтобы построить это, просто переберите каждое слово и добавьте его в набор, пройдя по блоку и добавив отсутствующие узлы, затем отметьте узел, соответствующий слову, номером абзаца.(не каждый узел на пути к слову, только последний узел)

Обратите внимание, что, поскольку слово может появляться в нескольких абзацах, вам, вероятно, нужен список номеров абзацев в каждом узле.Таким образом, вы также можете иметь пустой список в узлах для слов, которых нет в тексте.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...