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

一步步用线性探测法构造哈希表,哈希函数为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

相关推荐
Old Uncle Tom15 小时前
OpenClaw 记忆系统 -- 记忆预加载
java·数据结构·算法·agent
会编程的土豆15 小时前
洛谷题单入门1 顺序结构
数据结构·算法·golang
JasmineX-118 小时前
数据结构(笔记)——双向链表
c语言·数据结构·笔记·链表
嘻嘻哈哈樱桃21 小时前
牛客经典101题题解集--动态规划
java·数据结构·python·算法·职场和发展·动态规划
电科一班林耿超21 小时前
第 16 课:动态规划专题(二)—— 子序列与子数组问题:面试最高频的 DP 题型
数据结构·算法·动态规划
hnjzsyjyj21 小时前
洛谷 B3622:枚举子集(递归实现指数型枚举)← DFS
数据结构·dfs
qiqsevenqiqiqiqi1 天前
MT2048三连 暴力→数学推导→O (n) 优化
数据结构·c++·算法
码之气三段.1 天前
十五届山东ccpc省赛补题(update)
数据结构·c++·算法
沉默-_-1 天前
备战蓝桥杯-哈希
c++·学习·算法·蓝桥杯·哈希算法
保持清醒5401 天前
二叉链表实现
数据结构