(
混雜
桌子
,也稱為
哈希表
),是基於鍵值(Key
值)進行直接訪問。換句話說,它通過將鍵值映射到表中的某個位置來訪問記錄,從而加快搜索速度。這個映射函數稱為哈希函數,存儲記錄的數組稱為(
哈希表)。
混雜
桌子
這個概念!!
如果結構中有壹個鍵和K相同的記錄,那麽它壹定在f(K)的存儲位置。所以不需要對比就可以直接得到搜索到的記錄。稱這種對應為散列函數(Hash
函數),根據這壹思想建立的表是
散列表
不同的關鍵字可能得到相同的哈希地址,即key1≠key2,f(key1)=f(key2)。這種現象叫做沖突。對於這個哈希函數,具有相同函數值的關鍵字稱為同義詞。綜上所述,根據哈希函數H(key)和處理沖突的方法,將壹組關鍵字映射到壹個有限的連續地址集(區間),將地址集中關鍵字的“映像”作為記錄在表中的存儲位置,稱為哈希表。這個映射過程稱為哈希表制作或哈希,獲得的存儲位置稱為哈希地址。
如果對於關鍵字集合中的任意關鍵字,哈希函數映射到地址集合中任意地址的概率相等,那麽這種哈希函數稱為均勻哈希函數(Uniform。
混雜
Function),就是通過哈希函數讓關鍵詞得到壹個“隨機地址”,從而減少沖突。
哈希函數可以使訪問數據序列的過程更快、更有效,通過哈希函數可以更快地定位數據元素。
直接尋址法:取關鍵字或關鍵字的壹個線性函數值作為哈希地址。即H(key)=key或H(key)
=
壹把鑰匙
+
B,其中A和B是常數(這個哈希函數叫做內函數)。
數字分析方法
中間平方方法
折疊法
隨機數方法
除以余數法:將關鍵字除以壹個不大於哈希表長度m的數p得到的余數作為哈希地址。也就是
h(鍵)
=
鍵
現代的
p,
p & lt=m .不僅可以直接從關鍵詞中取模,還可以取折疊平方後的模。p的選擇很重要,壹般取質數或m,如果p選擇不好,就容易出現同義詞。
論沖突解決的方法
大約有4個
物種,
妳谷歌壹下
順便說壹下,
上面寫著呢
看著它。
Java語言(壹種計算機語言,尤用於創建網站)
應用程序接口
兩者都有,對嗎?。