Update Hash Table image.

This commit is contained in:
Oleksii Trekhleb 2022-08-11 17:26:11 +02:00
parent ac31c913b2
commit 18fcead0dc
8 changed files with 27 additions and 11 deletions

View File

@ -17,7 +17,9 @@ hachage où la fonction de hachage génère le même index
pour plusieurs clés. De telles collisions doivent être pour plusieurs clés. De telles collisions doivent être
accommodées d'une manière ou d'une autre. accommodées d'une manière ou d'une autre.
![Hash Table](https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg) ![Hash Table](./images/hash-table.jpeg)
*Made with [okso.app](https://okso.app)*
Collision de hachage résolue par chaînage séparé. Collision de hachage résolue par chaînage séparé.

View File

@ -4,7 +4,9 @@
理想的には、ハッシュ関数は各キーを一意のバケットに割り当てますが、ほとんどのハッシュテーブルは不完全なハッシュ関数を採用しているため、複数のキーに対して同じインデックスを生成した時にハッシュの衝突が起こります。このような衝突は何らかの方法で対処する必要があります。 理想的には、ハッシュ関数は各キーを一意のバケットに割り当てますが、ほとんどのハッシュテーブルは不完全なハッシュ関数を採用しているため、複数のキーに対して同じインデックスを生成した時にハッシュの衝突が起こります。このような衝突は何らかの方法で対処する必要があります。
![Hash Table](https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg) ![Hash Table](./images/hash-table.jpeg)
*Made with [okso.app](https://okso.app)*
チェイン法によるハッシュの衝突の解決例 チェイン法によるハッシュの衝突の解決例

View File

@ -11,7 +11,9 @@ _Read this in other languages:_
이상적으로, 해시 함수는 각 키들을 고유 버킷에 할당하지만 대부분의 해시 테이블은 불완전한 해시 함수를 사용하기 때문에 해시 함수를 통해 두 개 이상의 키에 대해 동일한 인덱스를 생성하는 해시 충돌이 발생할 수 있습니다. 이러한 해시 충돌은 어떠한 방법으로든 해결되어야 합니다. 이상적으로, 해시 함수는 각 키들을 고유 버킷에 할당하지만 대부분의 해시 테이블은 불완전한 해시 함수를 사용하기 때문에 해시 함수를 통해 두 개 이상의 키에 대해 동일한 인덱스를 생성하는 해시 충돌이 발생할 수 있습니다. 이러한 해시 충돌은 어떠한 방법으로든 해결되어야 합니다.
![Hash Table](https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg) ![Hash Table](./images/hash-table.jpeg)
*Made with [okso.app](https://okso.app)*
다음은 분리 연결법을 통해 해시 충돌을 해결한 예시입니다. 다음은 분리 연결법을 통해 해시 충돌을 해결한 예시입니다.

View File

@ -22,7 +22,9 @@ collisions where the hash function generates the same
index for more than one key. Such collisions must be index for more than one key. Such collisions must be
accommodated in some way. accommodated in some way.
![Hash Table](https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg) ![Hash Table](./images/hash-table.jpeg)
*Made with [okso.app](https://okso.app)*
Hash collision resolved by separate chaining. Hash collision resolved by separate chaining.

View File

@ -13,7 +13,9 @@ imperfeita, pela qual poderá causar colisões de hashes onde a função de hash
gera o mesmo índice para mais de uma chave.Tais colisões devem ser gera o mesmo índice para mais de uma chave.Tais colisões devem ser
acomodados de alguma forma. acomodados de alguma forma.
![Hash Table](https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg) ![Hash Table](./images/hash-table.jpeg)
*Made with [okso.app](https://okso.app)*
Colisão de hash resolvida por encadeamento separado. Colisão de hash resolvida por encadeamento separado.

View File

@ -5,7 +5,9 @@
быть найдено желаемое значение. Ниже представлена хеш-таблица, в которой ключом выступает имя человека, а значениями быть найдено желаемое значение. Ниже представлена хеш-таблица, в которой ключом выступает имя человека, а значениями
являются телефонные номера. Хеш-функция преобразует ключ-имя в индекс массива с телефонными номерами. являются телефонные номера. Хеш-функция преобразует ключ-имя в индекс массива с телефонными номерами.
![Хеш-таблица](https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg) ![Hash Table](./images/hash-table.jpeg)
*Made with [okso.app](https://okso.app)*
В идеале хеш-функция будет присваивать элементу массива уникальный ключ. Однако большинство реальных хеш-таблиц В идеале хеш-функция будет присваивать элементу массива уникальный ключ. Однако большинство реальных хеш-таблиц
используют несовершенные хеш-функции. Это может привести к ситуациям, когда хеш-функция генерирует одинаковый индекс для используют несовершенные хеш-функции. Это может привести к ситуациям, когда хеш-функция генерирует одинаковый индекс для
@ -14,9 +16,11 @@
Существует два варианта решения коллизий - хеш-таблица с цепочками и с открытой адресацией. Существует два варианта решения коллизий - хеш-таблица с цепочками и с открытой адресацией.
Метод цепочек подразумевает хранение значений, соответствующих одному и тому же индексу в виде связного списка(цепочки). Метод цепочек подразумевает хранение значений, соответствующих одному и тому же индексу в виде связного списка(цепочки).
![Хеш цепочки](https://upload.wikimedia.org/wikipedia/commons/d/d0/Hash_table_5_0_1_1_1_1_1_LL.svg) ![Хеш цепочки](https://upload.wikimedia.org/wikipedia/commons/d/d0/Hash_table_5_0_1_1_1_1_1_LL.svg)
Метод открытой адресации помещает значение, для которого получен дублирующий индекс, в первую свободную ячейку. Метод открытой адресации помещает значение, для которого получен дублирующий индекс, в первую свободную ячейку.
![Хеш открытая адресация](https://upload.wikimedia.org/wikipedia/commons/thumb/b/bf/Hash_table_5_0_1_1_1_1_0_SP.svg/380px-Hash_table_5_0_1_1_1_1_0_SP.svg.png) ![Хеш открытая адресация](https://upload.wikimedia.org/wikipedia/commons/thumb/b/bf/Hash_table_5_0_1_1_1_1_0_SP.svg/380px-Hash_table_5_0_1_1_1_1_0_SP.svg.png)
## Ссылки ## Ссылки

View File

@ -9,7 +9,9 @@
以某种方式进行处理。 以某种方式进行处理。
![Hash Table](https://upload.wikimedia.org/wikipedia/commons/7/7d/Hash_table_3_1_1_0_1_0_0_SP.svg) ![Hash Table](./images/hash-table.jpeg)
*Made with [okso.app](https://okso.app)*
通过单独的链接解决哈希冲突 通过单独的链接解决哈希冲突

Binary file not shown.

After

Width:  |  Height:  |  Size: 165 KiB