选取哈西函数h(k)=k%11,用线性探测在散列方法处理冲突。是在0-10的散列地址中,对
时间: 2024-01-09 18:01:52 浏览: 207
选取哈西函数h(k)=k%11,用线性探测在散列方法处理冲突。是
5星 · 资源好评率100%
哈希函数h(k)=k mod 11,对键k进行哈希处理得到的散列地址为h(k)。
假设我们有一组键为{3, 15, 6, 10, 8, 20, 7, 9, 12, 4}的数据需要进行散列处理,并且散列地址的范围为0-10。对于每个键k,我们先通过哈希函数h(k)计算出其散列地址,然后使用线性探测来处理冲突。
首先,我们将数据依次插入到散列表中:
- 3的散列地址为3,直接插入;
- 15的散列地址为4,直接插入;
- 6的散列地址为6,直接插入;
- 10的散列地址为10,直接插入;
- 8的散列地址为8,直接插入;
- 20的散列地址为9,直接插入;
- 7的散列地址为7,直接插入;
- 9的散列地址为9,发生冲突,使用线性探测找到下一个空闲位置为10,插入;
- 12的散列地址为1,直接插入;
- 4的散列地址为4,发生冲突,使用线性探测找到下一个空闲位置为5,插入。
经过上述处理,我们得到的散列表为:
0: 空
1: 12
2: 空
3: 3
4: 15, 4
5: 空
6: 6
7: 7
8: 8
9: 20, 9
10: 10
通过使用哈希函数h(k)=k mod 11和线性探测的方法,我们成功地将数据存储到了散列表中,并解决了冲突的问题。
阅读全文