杂凑法

    杂凑法有多种算法:质数除余法,基数转换法,平方取中法等等,各有优点,要根据关键字特点决定取舍。这里以质数除余法为例介绍杂凑算法的含义:

   设有N组数据记录,所需存储单元数为m。用质数除余法的算法步骤如下:

1)确定一个接近m的质数P。

2)设所要转换的记录的关键字值为Ki,则其相对地址为:

ri=Ki-INT(Ki/P)*P 1≤i≤N,0≤ri≤P-1

3)用一线性函数将相对地址ri映射为实际地址,即:

H(Ki)=f(ri)=A(RKi

其中H(Ki)---杂凑函数;

A(RKi)---i记录的相对地址。