为哈希选择合适的桌子大小

kyl*_*lex 9 java hash hashtable

如果我的密钥集为1000,那么我的哈希表的大小是多少,这是如何确定的?

Bil*_*ard 9

它取决于负载因子(表中将增加其大小并重新分配其元素的"满百分比"点).如果您知道您有1000个条目,并且该数字永远不会更改,您可以将加载因子设置为1.0,将初始大小设置为1000以获得最大效率.如果您不确定确切的大小,可以将负载系数保留为默认值0.75并将初始大小设置为1334(预期大小/ LF)以获得非常好的性能,但需要额外的内存.

您可以使用以下构造函数来设置加载因子:

Hashtable(int initialCapacity, float loadFactor) 
Run Code Online (Sandbox Code Playgroud)