1. 程式人生 > >雜湊表-線性探測法/鏈地址法

雜湊表-線性探測法/鏈地址法

1.線性探測法

eg.假設散列表的長度是13,三列函式為H(K) = k % 13,給定的關鍵字序列為{32, 14, 23, 01, 42, 20, 45, 27, 55, 24, 10, 53}。分別畫出用線性探測法和拉鍊法解決衝突時構造的雜湊表,並求出在等概率情況下,這兩種方法的查詢成功和查詢不成功的平均查詢長度。

2.鏈地址法:用鏈地址發解決衝突的方法時:把所有關鍵字為同義詞的記錄儲存在一個線性連結串列中,並將這些連結串列的表頭指標放在陣列中(下標從0到m-1)

設雜湊長為8,雜湊函式H(K)=K mod 7,儲時記錄關鍵序列為(32,24,15,27,20,13),計算鏈地址法(拉鍊法)作為解決衝突方法的平均長度是 : 7/6

查詢成功的平均長度:分母為雜湊表元素的個數

(1*5+2*1)/6=7/6

查詢成功的平均長度:分母為雜湊表的長度

(1*5+2*1)/ 8=7/8