§05 查找
哈希表
除留余数法 H(key) = key mod m 把关键字直接映射到槽位,期望一次存取。冲突不可避免: 线性探测沿后继槽位找空位(开放定址),链地址法则把同义词挂成链表。装填因子 α = n/m 决定冲突频率,也决定平均查找长度。
哈希表
伪代码
1
procedure createHash(T, m, keys)
2
for each key in keys do
3
h = H(key) = key mod m
4
i = 0
5
while T[(h + i) mod m] 非空 do
6
i = i + 1 // 冲突:线性探测下一槽
7
T[(h + i) mod m] = key // 找到空槽,放入
8
end for
9
end procedure