问题
单项选择题
若线性表(23,14,45,12,8,19,7)采用散列法进行存储和查找。设散列函数为 H(Key)=Key mod 7并采用线性探查法(顺序地探查可用存储单元)解决冲突,则构造的散列表为______,其中,mod表示整除取余运算。
A.哈希地址 0 1 2 3 4 5 6 关键字 14 8 23 45 7 12 19
B.哈希地址 0 1 2 3 4 5 6 关键字 7 8 12 14 19 23 45
C.哈希地址 0 1 2 3 4 5 6 关键字 7 8 23 45 12 19 14
D.哈希地址 0 1 2 3 4 5 6 关键字 14 7 12 8 45 23 19
答案
参考答案:A
解析: 一开始哈希表为空,首先存储23,因为23 mod 7=2,所以,23存入地址2的单元格;然后是14,14 mod 7=0,所以14存入0号单元格;45 mod 7=3,45存入 3号;12 mod 7=5,12存入5号;8 mod 7=1,8存入1号;19 mod 7=5,这时,因为5号已被12占据了,根据题意顺序地探查可用存储单元,所以19应该存入6号;最后一个数7 mod 7=0,而0、1、2、3号都已被占据,所以7被存入4号。故本题应该选择A。