前缀树中的查找成本是什么?为什么?

时间:2013-06-24 18:33:53

标签: algorithm complexity-theory prefix-tree

给出前缀树和密钥。在树中查找密钥的成本是多少?

我在一篇论文中读到它是O(1)。据我所知,它是O(LogM),其中M是密钥的长度。我找不到这个问题的答案,为什么它是O(1),但有一个人提到,如果我们忽略扫描密钥,则可能是O(1)。如果我们忽略扫描密钥,有人可以用图形方式向我解释(通过制作树并遍历)O(1)如何?

1 个答案:

答案 0 :(得分:0)

在Trie中查找密钥的成本不是O(1)

总时间为O(l),其中l是您要匹配的单词长度的最小值,或树的深度。请注意,许多人将其写为O(log n),其中n是树中的总元素。

从树的根开始。您只需要遍历与当前单词匹配的1节点。您继续此遍历,直到您匹配该单词,或该单词不在树中。由于每个节点只搜索1个子节点,因此它为O(l)