【问题标题】:Structure of a trie for a word with subwords带有子词的单词的 trie 结构
【发布时间】:2015-04-16 20:08:14
【问题描述】:

对于具有诸如“icecream”之类的子词(包含“i”、“ice”、“cream”、“icecream”)的单词的 trie 结构是什么; “businessman”(包含“bus”、“is”、“business”、“man”、“businessman”)。

我知道那些没有像“inn”这样的子词的人会怎么样,但我对上面的词感到困惑。

提前致谢。

【问题讨论】:

标签: dictionary data-structures nlp trie text-segmentation


【解决方案1】:

您可以在您的 trie 节点中使用布尔值“isTerminal”来指示单词是否在该节点处终止。 因此,所有单词“bus”、“business”和“businessman”都将从节点“b”开始并沿着相同的路径。 's' 代表 'bus'、's' 代表 'business' 和 'n' 代表 'businessman' 的节点将具有 isTerminal = true。

虽然“man”包含在“businessman”中,但应将其视为从根节点的“m”子节点开始并位于单独路径上的单词。

因此,所有单词都严格从顶部字母节点(根的子节点)开始,并在布尔值 isTerminal=true 指示的不同级别终止。

【讨论】:

  • 谢谢。也有同样的想法,但认为可以有替代方法来节省内存。
猜你喜欢
  • 2022-11-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多