gpt4 book ai didi

java - 当我们使用自定义哈希函数时,Java HashTable 是否遵守负载因子(我们指定)?

转载 作者:行者123 更新时间:2023-12-02 09:40:35 25 4
gpt4 key购买 nike

Java 允许我们指定我们希望创建的哈希表的大小和所需的负载因子。如果我们使用自定义 HashCode 方法自行生成键,那么负载因子必须依赖于我们的 HashCode 的效率/优点。我如何知道我最初指定的负载系数要求仍然得到满足?

低于我想要的负载系数是 0.67。

Hashtable<Long, String[]> ht = new Hashtable<>(100, 0.67f);

但是如果我说以下内容

public int hashCode(int n){
int a = n%72;
return a;}

那么即使我的 hashcode 函数很差,0.67 的负载因子是否仍会保留?

最佳答案

根据您的问题,即使哈希码函数很差,仍然可以保留 0.67 的负载因子。负载因子用于决定何时增加内部结构的大小以容纳新的数据集。如果 hashcode 函数不好,你可能会遇到很多冲突。

其他专家可以对此进行更多阐述并帮助我改进我的答案。

关于java - 当我们使用自定义哈希函数时,Java HashTable 是否遵守负载因子(我们指定)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57100912/

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