平方探测法:为了消除一次聚集,hi(x)= ( Hash(x) + F(I) ) % TableSize(I=0,1,2…),其中F(I) = ,Hash(x)表示经过hash函数后的值
例:假设表的size=10(这里不是素数,视为方便),数据:这里的hash函数=f(x)%tablesize
| 1 | 2 | 3 | 4 | 5 |
| 89 | 18 | 49 | 58 | 69 |
| 9 | 8 | 9 | 8 | 9 |
结果
| 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
| 49 | 58 | 69 | 18 | 89 | |||||
其中:58的位置确定:(8+1)%10的位置已被占有,再(8+4)%10,2的位置空闲;69的位置确定:(9+1)%10的位置已被占有,再(9+4)%10,3的位置空闲。
本文详细介绍了平方探测法如何解决哈希表中的一次聚集问题,通过具体实例展示了当哈希函数产生的位置被占用时,如何通过计算新的位置来避免冲突。此方法对于优化哈希表的性能至关重要。
4781

被折叠的 条评论
为什么被折叠?



