940 字
2 分钟
考研专业课学习记录2026-07-13
考研专业课学习记录 | 2026-07-13
今日学习内容
今天总共投入2.5小时学习散列表相关知识点,覆盖了408统考大纲中数据结构板块的散列表核心考点。
AI知识点带复盘
1. 散列表核心概念复盘
散列表(Hash Table)又称哈希表,是根据关键字(key)直接进行访问的数据结构,通过把关键字映射到表中一个位置来访问记录,以加快查找速度,这个映射函数称为散列函数,存放记录的数组称为散列表。考研核心考点:散列表的平均查找长度(ASL)与装填因子直接相关,越小,发生冲突的概率越低,平均查找长度越小。
2. 常用散列函数构造方法
考研高频考点包括:
- 除留余数法:最常用的构造方法,公式为,其中应取不大于散列表长度的最大质数,可最大程度减少冲突。
- 直接定址法:,适用于关键字分布连续的场景。
- 数字分析法、平方取中法等,多以选择题形式考察适用场景。
3. 冲突解决方法(考研核心大题考点)
分为两大类:
- 开放地址法:
- 线性探测法:,缺点是会产生“堆积”问题,相同散列地址的关键字越多,查找效率越低。
- 二次探测法:,避免了线性探测的堆积问题,但不能探测到整个散列表空间。
- 双散列法:使用第二个散列函数计算增量,进一步减少堆积。
- 链地址法:将所有关键字为同义词的记录存储在一个单链表中,散列表数组存储每个链表的头指针,是考研最常考察的冲突解决方法,其平均查找长度与装填因子线性相关,且不会产生堆积问题。
4. 平均查找长度计算
考研常考察不同冲突处理方法下的ASL计算,例如给定关键字序列和散列表长度,计算线性探测法下的成功和不成功平均查找长度,需要重点掌握计算步骤。
问题与反思
- 对于不同冲突解决方法下平均查找长度的计算逻辑仍不够熟练,尤其是不成功ASL的推导过程容易混淆。
- 对双散列法的具体实现细节和适用场景还需要进一步梳理巩固。
- 在选择题中容易混淆线性探测法和二次探测法的优缺点,需要强化对比记忆。
收获与总结
- 系统梳理了408大纲中散列表板块的所有核心考点,明确了散列表的核心优势在于通过空间换时间实现高效查找。
- 掌握了除留余数法等主流散列函数的构造规则和适用场景,能够快速判断不同场景下应选用的散列函数。
- 厘清了开放地址法和链地址法的核心区别,能够准确分析两种方法的优缺点和适用场景。
- 明确了装填因子对散列表查找效率的决定性影响,理解了与平均查找长度的正向关联逻辑。
💡 碎碎念:踏实吃透每一个知识点!
文档内容由 AI 辅助生成
分享
如果这篇文章对你有帮助,欢迎分享给更多人!
考研专业课学习记录2026-07-13
https://elysiaweb.vercel.app/posts/408/7-13/ 部分信息可能已经过时
相关文章 智能推荐