Skip to content

Commit 85e96e5

Browse files
代码风水师代码风水师
authored andcommitted
添加了HashMaori中哈希冲突的讲解
1 parent c86a681 commit 85e96e5

2 files changed

Lines changed: 12 additions & 0 deletions

File tree

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
#### 解决哈希冲突的算法
2+
3+
- 1. 开放定地址法
4+
2. 再哈希法
5+
3. 链地址法
6+
4. 建立公共溢出区

resource/markdown/collection/HashMap1.7v.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,12 @@
1212
1313
#### Hash冲突(哈希碰撞💥)
1414

15+
>在一间教室里有一排座椅,这一排座椅线性排列对应的数据结构是 **数组**,数组的特点是可以根据下标(索引)快速🔜访问,通过下标(索引)访问的位置 `table[i]` 称为 ****,在伴随着 `哈希算法` 计算的槽称为 **哈希槽**。假设这排座椅共16个座位💺,编号从0,1,2…开始直到15。学校有很多学生,他们的编号也是从0,1,2…起始,有很多同学喜欢坐在一起,学校🏫为了让他们散列分开坐,采用 `模运算` 的方式。比如 1号同学的对座椅长度16模运算得1,那么你坐在1号位置,5号同学对座椅长度16模运算得5,那么他坐在5号位置,以此类推。1号座位已经被1号同学占用,新来的17号同学对16作模运算也得1,按照原来的算法,他也应该坐在1号,此时17号同学和1号同学的座位💺就 **冲突**,在 `HashMap`中伴随着索引的由哈希算法计算的,此冲突又称 **哈希冲突(哈希碰撞💥)**
16+
17+
![哈希冲突(哈希碰撞)]()
18+
19+
#### 解决哈希冲突的算法请参考另外一篇文章
20+
1521
>
1622
1723
#### 重要属性(请记住这些常量和变量的含义,下面源码分析会用到)

0 commit comments

Comments
 (0)