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

一步步用线性探测法构造哈希表,哈希函数为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. 23 → 23%11=1 → 地址 1
  2. 40 → 40%11=7 → 地址 7
  3. 91 → 91%11=3 → 地址 3
  4. 17 → 17%11=6 → 地址 6
  5. 19 → 19%11=8 → 地址 8
  6. 10 → 10%11=10 → 地址 10
  7. 31 → 31%11=9 → 地址 9
  8. 65 → 65%11=10 → 地址 10(冲突)→ 线性探测地址 0(空)→ 存入地址 0
  9. 26 → 26%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

相关推荐
UIU1148 小时前
P1233 [ICPC 2001 Taejon R] 木棍加工
数据结构·c++·算法·动态规划
niyongsheng11 小时前
3D 装箱算法工程化:数据结构、放置启发式与支撑规则
数据结构·算法·rust
叉烧滑蛋13 小时前
B站台湾大学郭彦甫|MATLAB 学习笔记|04 变量与档案存取
数据结构
j7~14 小时前
【穷举、深搜与回溯算法】一棵决策树讲透全排列与子集
数据结构·c++·算法·leetcode·回溯·递归
not coder16 小时前
一文讲通--从树到红黑树
数据结构·算法
爱吃香菜的初学者17 小时前
八.数据结构——哈希表(1)
数据结构·散列表
二十七日秋19 小时前
算法刷题笔记「Day 1|四道 OJ 入门题里的深坑」
c语言·汇编·数据结构·c++·笔记·python·算法
重生之小比特20 小时前
【算法拾光】前缀和|连续的子数组和 + 和相同的二元子数组
算法·leetcode·哈希算法
小白起 v20 小时前
02-数组与链表
数据结构·链表
路灯上の马陈1 天前
二叉树的定义与性质
数据结构·二叉树·树结构·1024程序员节