【发布时间】:2019-10-21 02:20:37
【问题描述】:
给定大量单词(比如 100 万个)。使用 Trie,我们可以轻松实现前缀匹配。但是我怎样才能实现部分匹配。
例如我们有一个单词列表 {"abc", "def", "lunch", "diner"....},我如何在搜索 "unc" 时得到午餐?
在这种情况下,Trie 仍然是一个很好的数据结构吗?有哪些可能的方法可以有效地实现它?
【问题讨论】:
标签: java string match partial trie
给定大量单词(比如 100 万个)。使用 Trie,我们可以轻松实现前缀匹配。但是我怎样才能实现部分匹配。
例如我们有一个单词列表 {"abc", "def", "lunch", "diner"....},我如何在搜索 "unc" 时得到午餐?
在这种情况下,Trie 仍然是一个很好的数据结构吗?有哪些可能的方法可以有效地实现它?
【问题讨论】:
标签: java string match partial trie
用于此类应用程序的最常见结构是Suffix Tree 这实际上是 Trie 的一个版本,它允许将字符串的所有后缀有效地存储在单个结构中。还有其他选择,但这是效率和简单性之间的良好平衡。
【讨论】: