基本概念
如何查詢?
以上兩例為例,
若查詢2001011810216的資訊,可直接訪問v[16];
查詢key=9,則訪問h(9)=9號位址,若內容為9則成功,若查不到,則返回空指標或空記錄。
優缺點:
構造方法
制定乙個好的解決衝突的方案:
構造雜湊函式需考慮的因素:
根據元素集合的特性構造:
要求2:無論用什麼方法儲存,目的都是盡量均勻地存放元素,以避免衝突。
常用的方法有:
下面重點介紹直接定址法和除留餘數法。
處理衝突的方法
下面重點介紹開位址法和鏈位址法。
例如:除留餘數法
h i=
(has
h(ke
y)+d
i)mo
dmdi
為增量序
列= (hash(key) + )\;\bmod \;m\;\;\;\;\;
hi=(h
ash(
key)
+di
)mod
mdi
為增量序
列根據d
id_i
di構造方法的不同,將開位址法又分為3種,即,
開位址法——線性探測法
開位址法——二次探測法
開位址法——偽隨機探測法
鏈位址法
優點:
雜湊表的查詢
效能分析:
asl與裝填因子α
\alpha
α有關,既不是嚴格的o(1
)o(1)
o(1)
,也不是嚴格的o(n
)o(n)
o(n)
。幾點結論:
資料結構之查詢(七) 雜湊表查詢(雜湊表)
雜湊技術是在記錄的儲存位置和它的關鍵字之間建立乙個確定的對應關係f,使得每個關鍵字key對應 乙個儲存位置f key 即儲存位置 f 關鍵字 我們把這種對應關係f稱為雜湊函式,又稱為雜湊 hash 函式。採用雜湊技術將記錄儲存在一塊連續的儲存空間中,這塊連續儲存空間稱為雜湊表或雜湊表 hash ta...
資料結構之雜湊表查詢 雜湊表
這個知識點不難,話不多說,直接上 如下 1 include stdafx.h 2 include3 define success 1 4 define unsuccess 0 5 define hashsize 12 定義雜湊表長為陣列的長度 6 define nullkey 3276878 usi...
資料結構(七) 查詢之雜湊表
雜湊函式的構造原則 將關鍵字分割成位數相同的幾段,最後一位可以 不同。段的長度取決於雜湊表的位址位數,然後 將各段的疊加和 捨去進製 作為雜湊位址 設桶數b,取質數 m b hash key key m 設定雜湊函式為 h key random key 其中,random 為偽隨機函式 開放位址法 ...