Compare commits

...

3 commits

Author SHA1 Message Date
Rushan
46e063651b
Merge a181f03ed9 into 356cc35e8a 2024-12-10 21:03:48 +08:00
Yudong Jin
356cc35e8a
Update the links to the zh-hant version of the PDF. (#1588) 2024-12-07 23:01:46 +08:00
yhan
a181f03ed9
fix(Update hash_collision.md):开放寻址只有一个桶不像链式地址有多个桶
表述不应该提到多个桶,建议表述成桶中冲突的位置以及冲突之后的位置。即
最后两位相同的 `key` 都会被映射到桶中相同位置并产生冲突。而通过线性探测,它们被依次存储在该桶内原冲突位置及其之后的位置中。
2024-11-13 21:24:08 +08:00
3 changed files with 4 additions and 2 deletions

View file

@ -50,7 +50,7 @@
- **插入元素**:通过哈希函数计算桶索引,若发现桶内已有元素,则从冲突位置向后线性遍历(步长通常为 $1$ ),直至找到空桶,将元素插入其中。 - **插入元素**:通过哈希函数计算桶索引,若发现桶内已有元素,则从冲突位置向后线性遍历(步长通常为 $1$ ),直至找到空桶,将元素插入其中。
- **查找元素**:若发现哈希冲突,则使用相同步长向后进行线性遍历,直到找到对应元素,返回 `value` 即可;如果遇到空桶,说明目标元素不在哈希表中,返回 `None` - **查找元素**:若发现哈希冲突,则使用相同步长向后进行线性遍历,直到找到对应元素,返回 `value` 即可;如果遇到空桶,说明目标元素不在哈希表中,返回 `None`
下图展示了开放寻址(线性探测)哈希表的键值对分布。根据此哈希函数,最后两位相同的 `key` 都会被映射到相同的桶。而通过线性探测,它们被依次存储在该桶以及之下的桶中。 下图展示了开放寻址(线性探测)哈希表的键值对分布。根据此哈希函数,最后两位相同的 `key` 都会被映射到桶中相同位置并产生冲突。而通过线性探测,它们被依次存储在该桶内原冲突位置及其之后的位置中。
![开放寻址(线性探测)哈希表的键值对分布](hash_collision.assets/hash_table_linear_probing.png) ![开放寻址(线性探测)哈希表的键值对分布](hash_collision.assets/hash_table_linear_probing.png)

View file

@ -12,6 +12,8 @@
<p align="center"> <p align="center">
<a href="https://www.hello-algo.com/zh-hant/"> <a href="https://www.hello-algo.com/zh-hant/">
<img src="https://www.hello-algo.com/zh-hant/index.assets/btn_read_online_dark.svg" width="145"></a> <img src="https://www.hello-algo.com/zh-hant/index.assets/btn_read_online_dark.svg" width="145"></a>
<a href="https://github.com/krahets/hello-algo/releases">
<img src="https://www.hello-algo.com/zh-hant/index.assets/btn_download_pdf_dark.svg" width="145"></a>
</p> </p>
<p align="center"> <p align="center">

View file

@ -155,7 +155,7 @@
<a href="https://github.com/krahets/hello-algo/releases"> <a href="https://github.com/krahets/hello-algo/releases">
<img class="device-on-hover" style="height: 75%;" src="../assets/hero/pdf_ipad.png" alt=""> <img class="device-on-hover" style="height: 75%;" src="../assets/hero/pdf_ipad.png" alt="">
<div class="text-button"> <div class="text-button">
<span>PDF(簡中)</span> <span>下載 PDF</span>
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512"> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 320 512">
<path d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z" /> <path d="M278.6 233.4c12.5 12.5 12.5 32.8 0 45.3l-160 160c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3L210.7 256 73.4 118.6c-12.5-12.5-12.5-32.8 0-45.3s32.8-12.5 45.3 0l160 160z" />
</svg> </svg>