[英]Hashtable, Hashfunction: Difference between Value, Key, Hashvalue?
假设我们有要放入哈希表中的数据。 Hashfunction为每个数据对象计算一个Hashvalue,并将此hashvalue放入表中(每个值都应具有自己的存储桶)。 通过哈希值,我们知道数据对象在表中的确切位置。
钥匙在这里起什么作用? Java中的HashMap希望为我们放入HashMap的每个值指定一个特定的键,并使用该键可以获取该值。
我想知道我们要放入哈希表(在Java Hashmap中)的值,哈希值和键之间的区别是什么? 其背后的数学是什么?
您始终需要原始密钥,以应对哈希冲突。 哈希码(或您所称的哈希值)的目的是能够非常快速地找到键的可能匹配项。 哈希码仅基于密钥-值完全无关。
从逻辑上讲,从哈希表中获取数据是:
null
表示该结果。 (将哈希表划分为存储桶的确切方法是实现细节。有时每个存储桶仅包含一个条目,但可以链接到其他存储桶;在其他情况下,存储桶可以包含多个条目。请参见有关哈希的Wikipedia条目表格以获取更多信息。)
这里的“条目”是{key, value, hash}
元组:
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.