对于关键字序列(10,34,37,51,14,25,56,22,3),用线性探查法解决冲突构造哈希表,哈希函数为H(key)=key%11,关键字25存入的哈希地址编号为________________。

admin2020-05-13  34

问题 对于关键字序列(10,34,37,51,14,25,56,22,3),用线性探查法解决冲突构造哈希表,哈希函数为H(key)=key%11,关键字25存入的哈希地址编号为________________。

选项 A、2
B、3
C、5
D、6

答案C

解析 本题考查数据结构基础知识。
构造该关键字序列的哈希表过程如下:
①初始为空表。

②插入关键字10。
由于H(10)=10%11=10,不冲突,因此将10存入哈希地址为10的单元。

③插入关键字34、37、51、14。
由于H(34)=34%11=1,不冲突,因此将34存入哈希地址为1的单元;H(37)=37%11=4,不冲突,因此将37存入哈希地址为4的单元;H(51)=51%11=7,不冲突,因此将51存入哈希地址为7的单元;H(14)=14%11=3,不冲突,因此将14存入哈希地址为3的单元。

④插入关键字25。
由于H(25)=25%11=3,哈希地址为3的单元已被占用,发生冲突,根据线性探查法解决冲突,计算出哈希地址为4的单元,仍然冲突,继续计算,找出哈希地址为5的单元是空闲的,因此将25存入哈希地址为5的单元。

⑤插入关键字56。
由于H(56)=56%11=1,哈希地址为1的单元冲突,因此将56存入哈希地址为2的单元。

⑥插入关键字22。
由于H(22)=22%11=0,不冲突,因此将22存入哈希地址为0的单元。

⑦插入关键字3。
由于H(3)=3%11=3,哈希地址为3的单元已被占用,发生冲突,再依次计算哈希地址4、5,都冲突,哈希地址6处不冲突,因此将3存入哈希地址为6的单元。
转载请注明原文地址:https://jikaoti.com/ti/Z0L7FFFM
0

最新回复(0)