哈希表:给定一组查找关键字(32,15,7,11,4,28,56,61,79),哈希表长为m=12,请按照除留余数法设计一个哈希函数,设每个记录的查找概率相等。
慕课数据结构题目:
给定一组查找关键字(32,15,7,11,4,28,56,61,79),哈希表长为m=12,请按照除留余数法设计一个哈希函数,设每个记录的查找概率相等。
(1)画出按照线性探测再散列处理冲突得到的哈希表(给出求解过程),并计算等概率情况下查找成功和查找失败时的平均查找长度各是多少。
(2)画出按照链地址法处理冲突得到的哈希表,并计算等概率情况下查找成功和查找失败时的平均查找长度各是多少。
解答过程:
散列查找相关知识点
思维导图:
除留余数法:
- 假定散列表(哈希表)表长为 m,取一个不大于 m 但最接近或等于 m 的质数 p,利用以下公式把关键字转换成散列地址。
- 散列函数为:H(key) = key % p
处理冲突的方法:
开放地址法:
- 线性探测法:
- 平方探测法:
- 双散列法:
- 线性探测法:
- 拉链法:
还没有评论,来说两句吧...