1
4
有效地
工具
(刚刚看到莱皮的答案,我相信这就是他所说的那种混合方法。) |
2
3
如果您的字符来自一个有限的集合(例如,只有大写拉丁字母),那么您可以存储一个26个元素的数组,并且每次查找都是
|
3
3
在我看来,将它实现为一个字典,并不是实现一个Trie,而是实现一个字典字典。 当我实现了一个trie时,我已经按照Damien\u the \u unsiverse建议的方法来实现了它(+1):
这在理想情况下要求您的trie只支持由
当您需要添加/删除/检查节点是否存在时,您可以执行以下操作:
我接受了密码 from here 我想你会对TSTs感到惊喜;一旦我实现了一个TSTs,我就完全放弃了尝试。
|
4
2
有几种方法,但使用单个链接列表可能是最简单和轻量级的。 我会做一些测试,看看每个节点有多少子节点。如果不多(比如说20或更少),链接列表方法应该比哈希表更快。您还可以根据子节点的数量来执行混合方法。 |
Sean Magyar · ruby trie实现参考问题 7 年前 |
dmh · 为Trie类型扩展哪个协议? 8 年前 |
BrightVision · 使用Trie实现PHP T9字典〔closed〕 10 年前 |