计算机等级考试—哈希线性探测解答—东方仙盟

一步步用线性探测法构造哈希表,哈希函数为H(key)=key%11。

1. 逐个计算关键字的哈希地址

-23%11=1 → 地址 1-40%11=7 → 地址 7-91%11=3 → 地址 3-17%11=6 → 地址 6-19%11=8 → 地址 8-10%11=10 → 地址 10-31%11=9 → 地址 9-65%11=10 → 地址 10(冲突)-26%11=4 → 地址 4

2. 线性探测处理冲突

  • 65:哈希地址 10 被 10 占用,探测下一个地址 0(空),存入地址 0。
  • 其余关键字地址均无冲突,直接存入。

3. 最终哈希表

哈希地址 0 1 2 3 4 5 6 7 8 9 10
关键字 65 23 91 26 17 40 19 31 10

题目给的关键字序列是:23, 40, 91, 17, 19, 10, 31, 65, 26


完整计算过程(按顺序,不跳步)

  1. 2323%11=1 → 地址 1
  2. 4040%11=7 → 地址 7
  3. 9191%11=3 → 地址 3
  4. 1717%11=6 → 地址 6
  5. 1919%11=8 → 地址 8
  6. 1010%11=10 → 地址 10
  7. 3131%11=9 → 地址 9
  8. 6565%11=10 → 地址 10(冲突)→ 线性探测地址 0(空)→ 存入地址 0
  9. 2626%11=4 → 地址 4

为什么看起来 "跳着"?

因为每个关键字的哈希地址是由哈希函数 key%11 计算出来的,不是按顺序填充的。比如:

  • 第一个关键字 23 算出地址 1,不是 0;
  • 第二个关键字 40 算出地址 7,不是 2;
  • 第三个关键字 91 算出地址 3,不是 2;

阿雪技术观

在科技发展浪潮中,我们不妨积极投身技术共享。不满足于做受益者,更要主动担当贡献者。无论是分享代码、撰写技术博客,还是参与开源项目维护改进,每一个微小举动都可能蕴含推动技术进步的巨大能量。东方仙盟是汇聚力量的天地,我们携手在此探索硅基生命,为科技进步添砖加瓦。

Hey folks, in this wild tech - driven world, why not dive headfirst into the whole tech - sharing scene? Don't just be the one reaping all the benefits; step up and be a contributor too. Whether you're tossing out your code snippets, hammering out some tech blogs, or getting your hands dirty with maintaining and sprucing up open - source projects, every little thing you do might just end up being a massive force that pushes tech forward. And guess what? The Eastern FairyAlliance is this awesome place where we all come together. We're gonna team up

相关推荐
小江的记录本3 小时前
【Java基础】泛型:泛型擦除、通配符、上下界限定(附《思维导图》+《面试高频考点清单》)
java·数据结构·后端·mysql·spring·面试·职场和发展
落羽的落羽5 小时前
【算法札记】练习 | Week4
linux·服务器·数据结构·c++·人工智能·算法·动态规划
萑澈5 小时前
算法竞赛入门:C++ STL核心用法与时空复杂度速查手册
数据结构·c++·算法·stl
yuannl107 小时前
数据结构----二叉排序树(ai修改版)
数据结构
iiiiyu7 小时前
集合进阶(Map集合)
java·大数据·开发语言·数据结构·编程语言
小江的记录本7 小时前
【Java基础】核心关键字:final、static、volatile、synchronized、transient(附《思维导图》+《面试高频考点清单》)
java·前端·数据结构·后端·ai·面试·ai编程
go不是csgo8 小时前
两个Redis数据结构搞定签到和UV统计:Bitmap与HyperLogLog实战
数据结构·redis·uv
悠仁さん9 小时前
数据结构 栈与队
数据结构
Plan-C-9 小时前
二叉树的遍历
java·数据结构·算法
历程里程碑9 小时前
54 深入解析poll多路复用技术
java·linux·服务器·开发语言·前端·数据结构·c++