Compare commits

...

3 commits

Author SHA1 Message Date
Rushan
b7ed5f1c11
Merge a181f03ed9 into 292b107af2 2024-12-22 23:36:24 +08:00
Flamingo
292b107af2
fix(bubble-sort): update incorrect variable name in test output (#1595)
Some checks failed
Go / Go 1.19.x on ubuntu-latest (push) Successful in 1m32s
Go / Go 1.19.x on macos-latest (push) Has been cancelled
Go / Go 1.19.x on windows-latest (push) Has been cancelled
2024-12-20 17:15:22 +08:00
yhan
a181f03ed9
fix(Update hash_collision.md):开放寻址只有一个桶不像链式地址有多个桶
表述不应该提到多个桶,建议表述成桶中冲突的位置以及冲突之后的位置。即
最后两位相同的 `key` 都会被映射到桶中相同位置并产生冲突。而通过线性探测,它们被依次存储在该桶内原冲突位置及其之后的位置中。
2024-11-13 21:24:08 +08:00
3 changed files with 3 additions and 3 deletions

View file

@ -16,5 +16,5 @@ func TestBubbleSort(t *testing.T) {
nums1 := []int{4, 1, 3, 1, 5, 2}
bubbleSortWithFlag(nums1)
fmt.Println("冒泡排序完成后 nums1 = ", nums)
fmt.Println("冒泡排序完成后 nums1 = ", nums1)
}

View file

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

View file

@ -16,5 +16,5 @@ func TestBubbleSort(t *testing.T) {
nums1 := []int{4, 1, 3, 1, 5, 2}
bubbleSortWithFlag(nums1)
fmt.Println("泡沫排序完成後 nums1 = ", nums)
fmt.Println("泡沫排序完成後 nums1 = ", nums1)
}