[英]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.