哈希函数:键 转换为 下标值
解决冲突的方法
开放地址法
根据步长的区别分为三种方法
第一次哈希用作下标值, 第二次哈希用作步长
stepSize = constant - (key - constant)
实际中经常使用链地址方法
补充
补充:哈希(Hash)是把任意长度的输入通过哈希函数映射到固定长度输出的技术。在哈希表中常用两大冲突解决方法:① 开放地址法 —— 冲突时按规则(线性探测、二次探测、双散列)继续往后找空槽,缺点是易产生"聚集";② 链地址法(拉链法) —— 每个槽位维护一个链表(Java HashMap、Python dict 均采用此方案或其变种),删除简单、对负载因子容忍度高。哈希表平均增删查为 O(1),最坏 O(n)。
来源整理自:我的有道云笔记



