gpt4 book ai didi

optimization - 高效的Hashmap使用

转载 作者:行者123 更新时间:2023-12-03 15:51:10 27 4
gpt4 key购买 nike

使用哈希图的更有效方法是什么?

A) 使用多个较小的哈希图,或

B)将所有对象存储在一个巨大的哈希图中?

(假设 key 的散列算法相当有效,导致很少发生冲突)

澄清:选项 B 意味着按主键进行隔离——即不需要额外的查找来确定要使用的实际哈希映射。 (例如,如果查找键是字母数字,则 Hashmap 1 存储 A,Hashmap 2 存储 B,依此类推。)

最佳答案

肯定是B。哈希表的优点是每次查找的平均比较次数与大小无关。

如果将 map 拆分为 N 个较小的哈希图,则每次查找时平均必须搜索其中的一半。如果较小的 hashmap 具有与较大的 map 相同的负载因子,则比较的总数将增加大约 N/2 的因子。

如果较小的哈希图具有较小的负载因子,那么您就是在浪费内存。

所有这些都假设您在较小的哈希映射之间随机分配 key 。如果您根据 key 的某些功能(例如字符串前缀)分配它们,那么您创建的是 trie ,这对某些应用程序很有效(例如 Web 表单中的自动完成。)

关于optimization - 高效的Hashmap使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1216741/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com