|
|
|
|
|
by dkopi
3741 days ago
|
|
(I'm assuming you're a 5 year old who's at least been through a course on algorithms and data-structures): It's vaguely stated in the abstract:
"Hash-Tree is a key-value multi-tree with fast indexing performance and high space utilization." The use cases of hash trees are somewhat similar to hash tables (A map where you can quickly look up a key and get it's value), but you'd use a hash tree when you're willing to sacrifice a bit of performance for better memory usage. "Although hashtable is very fast with O(1) time complexity, but there is always about ~25% table entries are unused, because the hash-table load factor is .75. And this htree is suitable for memory-bounded cases." |
|
Do you know htree achieves this space efficiency? I ask because it looks to me like every node has an array of children, like a standard tree. Doesn't the cost of storing one additional pointer for each key add up to at least 25% space wasted?