设有两个散列函数H1(k)=k mod 13和H2(k)=k mod 11+1,散列表T[0...12],用双重散列解决冲突。函数H1用来计算散列地址,当发生冲突时,H2作为计算下一个探测地址的增量,假定在某一时刻表T的状态为:下一个被插入的关键码是42,

admin2009-01-19  35

问题 设有两个散列函数H1(k)=k mod 13和H2(k)=k mod 11+1,散列表T[0...12],用双重散列解决冲突。函数H1用来计算散列地址,当发生冲突时,H2作为计算下一个探测地址的增量,假定在某一时刻表T的状态为:下一个被插入的关键码是42,其插入的位置是【  】。

选项

答案0

解析 根据H1,42的插入位置应该是42mod13,即3,但位置3有冲突,用H2探测地址增量:42modl1+1=10,所以其插入位置应该是3+10=13,很显然T的最大位置是12,所以其插入位置为0。
转载请注明原文地址:https://kaotiyun.com/show/tVcZ777K
0

最新回复(0)