Структура данных HashTable

Привет, друзья, в сегодняшней статье я расскажу об основах хэш-таблиц, о том, что это такое, а также приведу практический пример для лучшего понимания. Мне было трудно понять всю концепцию хэш-таблиц, и наконец я смог разобраться в ней и хотел поделиться с теми, кто пытается понять, что это такое.

Итак, хэш-таблица — это структура данных, которая хранит данные в формате ассоциативного массива (думайте об этом как о массиве), доступ к которому можно получить с помощью ключей (уникальных). Каждый ключ связан со значением, которое может быть любым — от простого типа данных, например, целого числа, до более сложного типа данных, например, строки. Хэш-таблицы используются для хранения данных таким образом, чтобы их было легко извлекать, обновлять и удалять. В некоторых случаях их часто используют для хранения данных в базе данных, так как они могут использоваться для хранения данных таким образом, чтобы их было легко индексировать и искать по ним.

Как работает хэш-таблица?

Данные, хранящиеся в хэш-таблице, состоят из двух основных компонентов — ключа и значения. Ключ используется для доступа к элементу, а значение — это данные/информация.

Пример:

Допустим, мы хотим создать хэш-таблицу для хранения имен, адресов и т.д. людей. В этом случае хэш-таблица — это способ хранения информации в некотором ассоциативном массиве, и мы сопоставим ключ: имя, со значением: адрес. Представляя это визуально, мы в основном имеем структуру массива, как показано ниже;

Примечание: В реальной реализации кода хэш-таблицы мы обычно имеем больший объем данных, чем тот, который мы сейчас иллюстрируем на изображении выше, просто для понимания мы выбрали небольшой набор данных.

Итак, принцип работы заключается в том, что у нас есть хэш-функция, и хэш-функция будет рассматривать определенный ключ, переданный в таблицу, оценивать этот ключ и выдавать некий индексный номер, в котором будут храниться данные этого ключа.

Например:
Как правило;

С помощью этого мы можем сделать;

и отсюда, скажем, наша хэш-функция оценила ключ и сказала, хорошо… это должно быть в индексе 2;

Hash(kelly)-> 2

Следует отметить, что, поскольку хэш-функция написана так, что если вы вводите один и тот же ключ, она выплюнет один и тот же номер индекса. Поэтому каждый раз, когда я ввожу в хэш-функцию kelly, я должен получить индекс 2. и тот же процесс продолжается до бесконечности;

Hash(fotie)-> 0

Вот в двух словах, как это работает, надеюсь, это поможет;

Есть что добавить к этому? Пожалуйста, не стесняйтесь, делайте это ниже:)

Оцените статью
devanswers.ru
Добавить комментарий