通过trie map,我指的是一种关联数组,其中负载存储在trie中而不是哈希表中。
当我使用哈希映射/表时,我使用的键通常是字符串。使用哈希映射相比于使用一些基于trie的映射有什么优势?我已经阅读过哈希映射更快的文章,但在我的看来,一致的哈希函数必须检查(char)数组的每个元素以获取最终哈希值-只需遍历一次数组。在trie中,您同样需要遍历一次数组。
对我来说,这似乎会在编码小对象时使用更多内存(即使您仅允许在键中使用小写字母字符,也是每个节点26个指针,通常每个键都有多个节点),但好处是您永远不必担心调整大小。为什么哈希映射如此常见,但我从未见过trie map呢?
当我使用哈希映射/表时,我使用的键通常是字符串。使用哈希映射相比于使用一些基于trie的映射有什么优势?我已经阅读过哈希映射更快的文章,但在我的看来,一致的哈希函数必须检查(char)数组的每个元素以获取最终哈希值-只需遍历一次数组。在trie中,您同样需要遍历一次数组。
对我来说,这似乎会在编码小对象时使用更多内存(即使您仅允许在键中使用小写字母字符,也是每个节点26个指针,通常每个键都有多个节点),但好处是您永远不必担心调整大小。为什么哈希映射如此常见,但我从未见过trie map呢?