哈希题目

1.采用线性探测法处理散列时的冲突,当从哈希表删除一个记录时,不应将这个记录的所在位置置空,因为这会影响以后的查找()//对
解释:发生冲突时,向后位移一位,如果删除中间的,导致后面无法查找到,如1222223,删除一个2,1 22223,导致中间断裂,下次查找,搜索不到2
2.假定有k个关键字互为同义词,若用线性探测法把这k个关键字存入哈希表中,至少要进行多少次探测?()//k(k-1)/2次
解释:
本人觉得此题无答案,解释如下:
有k个关键字相同,对第一个进行哈希值计算时对应位置没有存放数,直接插入,无需探测。
对第二个数插入时探测次数为1,
以此类推
第k个插入时探测数为k-1.
所以
1+2+……+k-1=k*(k-1)/2才正确。
3.散列法存储的思想是由关键字值决定数据的存储地址,这样的说法正确吗?//正确
4.以下哪个不属于单向哈希表的特征(假设没有冲突)()//它把固定的信息转换成任意长度信息输出
解释:
哈希表(Hash Table)是一种根据关键字直接访问内存存储位置的数据结构。通过哈希表,数据元素的存放位置和数据元素的关键字之间建立起某种对应关系。
A,hash函数可以把字符串等任意长度的输入映射成固定长度的整数,也就是哈希值
B,与A说法相反,错误
C,哈希表建立了哈希值与原值信息存储之间的联系,可以通过哈希值查找到原值信息
D,不同的信息产生相同的哈希值叫哈希冲突。设计哈希函数应尽量避免哈希冲突。因此一般很难冲突。
5.随着

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值