早教吧 育儿知识 作业答案 考试题库 百科 知识分享

一道求画出对应哈希表的数据结构习题,求解答..已知一组关键字序列为(25,51,8,22,26,67,11,16,54,41),其散列地址空间为[0,…,12],若Hash函数定义为:H(key)=keyMOD13,采用线性探

题目详情
一道求画出对应哈希表的数据结构习题,求解答..
已知一组关键字序列为(25,51,8,22,26,67,11,16,54,41),其散列地址空间为[0,…,12],若Hash函数定义为:H(key) = key MOD 13,采用线性探测法处理冲突,请画出它们对应的哈希表
▼优质解答
答案和解析
由除余法的散列函数计算出的上述关键字序列的散列地址为(12,12,8,9,0,2,11,3,2,2)。
先插入25 T[12]的位置,51也是12,所以再探查(12+1) mod 13 = 0, 插入T[0]位置,8插入T[8],22插入T[9], 26插入T[0],发现被占,再探查(0+1) mod 13 =1,插入T[1], 67插入T[2],11插入T[11],16插入T[3],54插入T[2],发现T[2]被占,(2+1)mod 13 =3, T[3]依旧被占,再探查,(2+2)mod 13 =4,插入T[4],41发现T[2]被占,T[3] T [4]也被占,(2+3)mod 13 = 5,T[5]开放,插入,结果如下
地址空间 序列
0 51
1 26
2 67
3 16
4 54
5 41
6
7
8 8
9 22
10
11 11
12 25