摘要:
除法散列法似乎通过取k除以m的余数,来将关键字k映射到m个槽的某一个中去,亦即,散列函数为: h(k)=k mod m 当应用除法散列时,要注意m的选择。例如,m不应是2的幂,应为如果m=(2的p次)方,则 h(k)就是k的p个最低位数字。 问题是:对任意进制(s)的关键字k,m=(x的p次方),那么关键字k第几位(P)以前的值将不影响k的散列值? x如果不能整除进制,则p无确定值。 以下是x可以整除进制的情况: P=p-X+1,其中X的值可通过以下公式确定:s=(x的X次方)×Y。 P=P<=1?1:P 例如: 16进制:如果m=16(x=2,p=4),则第一位以前所有值不影 阅读全文