良好的Hash函数具有两个令人称心如意的特点:
一是快速的,并且它会把散列键均匀地分布在整个表中。
二是它还必须弥补可能出现在输入数据中的聚集(聚集是具有近似元素值得数据的趋势),对于相同的数据项,它必须总是产生相同的散列键。
如满足以下条件,散列函数一般将快速工作:
它们最多含有一个除法运算(一般是最终的模运算)
它们生成广泛的散列键
它们不依赖于将促使产生聚集的数据属性
良好的Hash函数具有两个令人称心如意的特点:
一是快速的,并且它会把散列键均匀地分布在整个表中。
二是它还必须弥补可能出现在输入数据中的聚集(聚集是具有近似元素值得数据的趋势),对于相同的数据项,它必须总是产生相同的散列键。
如满足以下条件,散列函数一般将快速工作:
它们最多含有一个除法运算(一般是最终的模运算)
它们生成广泛的散列键
它们不依赖于将促使产生聚集的数据属性