GESP 七级 · GESP 202412 C++ 七级 第 9 题

选择题 · 答案 D · 考点:哈希表、时间复杂度分析

← 整套速查表 GESP 七级 全部真题

题目

一个哈希表,包括 $n$ 个位置(分别编号 $0 \sim (n-1)$),每个位置最多仅能存储一个元素。该哈希表只有插入元素和查询两种操作,没有删除或修改元素的操作。以下说法错误的是( )。

答案:D

考点

哈希表 讲解 →哈希表 真题汇总 →时间复杂度分析

解题思维

分析时间复杂度时关注循环层数和每层迭代次数,递归算法则分析递归树。注意最坏/最好/平均情况的区别。

常见错误

分析复杂度时注意外层循环和内层循环的关联。例如内外两层都到n的循环不一定是O(n²),要看内层是否每次都在缩小。

详细解析(节选)

【考点】哈希表|线性探测|时间复杂度

1. 考纲定位 本题考查 GESP 七级"数据结构与算法"模块中的哈希表线性探测机制。命题人专门设置此题,就是要卡住考生对"哈希表不是随机访问"这一本质的认知偏差——不少学生误以为哈希表始终 O(1) 查询,却忘了冲突处理链的存在。

2. 解题思维 按选项逐一检验:

题目问"错误的是",B、D 都错,但 D 是更隐蔽的语义陷阱——它把"哈希位置空"偷换成"元素不存在",实际该元素可能已被探测链推到别处。

3. 陷阱拆解

4. 反命题思维 若把哈希函数改为开放寻址的二次探测,再问"最坏查询复杂度",答案会变成 O(√n) 而非 O(n)。刷到此类题,先问自己:这里考的是哈希的"理论理想性",还是"实际探测链"?前者选 O(1),后者选 O(n)。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断