上篇文章讲解了分离链接散列算法,其实解决冲突的另一种常用方法是开发定址法。
分离链接散列算法的缺点是需要指针,由于给新单元分配地址需要时间,因此这就导致算法的速度多少有些减慢,同时算法实际上还要求对另一种数据结构的实现;
除用链表解决冲突外,开放定址散列法是另一种不用链表解决冲突的方法,在开放定址散列算法系统中,若发生冲突,那么就尝试选择另外的单元,直到找到空位置为止。
因为所有的数据都要放置在表中,所以开放地址散列法所需要的表比分离链接散列用表大。一般来说,对于开放定址散列算法来说,装填因子应不低于0.5。
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------