在Trie中存储段落#

问题描述 投票:-1回答:1

我正在用Java构建一个Trie。在trie中搜索关键字时,关键字的条目还需要存储关键字在文本中出现的段落。有没有人对我如何用段落中的段落编号存储段落号有一些了解?我是否将整个文本编入索引,然后将其放入特里?我有点难过!

java keyword trie paragraph
1个回答
0
投票

通常,trie是通过具有某种节点类型而构造的树,其具有相同类型的子节点的列表,其中每个子节点再次具有列表,依此类推。现在,trie中的每个节点都对应于一个单词,反之亦然,因此如果在节点类型中创建一个额外的字段,则可以存储其他信息,例如段落编号。

为了构造这个,只需循环遍历每个单词并通过沿着trie向下移动并添加缺失的节点将其添加到trie,然后使用段落编号标记与单词对应的节点。 (不是每个节点都在去单词的路上,只有最后一个节点)

请注意,由于单词可能出现在几个段落中,因此您可能需要每个节点中的段落编号列表。这样,您还可以在节点中为文本中不存在的单词添加空列表。

© www.soinside.com 2019 - 2024. All rights reserved.