Форум программистов, компьютерный форум CyberForum.ru

Хеш таблицы - C++

Восстановить пароль Регистрация
 
cats2013
1 / 1 / 0
Регистрация: 14.04.2013
Сообщений: 17
27.04.2013, 23:19     Хеш таблицы #1
Начал изучать хеш таблицы.

Подскажите насчёт хеш таблиц с открытимы адрессами:

- Должны ли мы инициализировать значение ключа таблицы если позиция таблицы никогда не использовалась?

- Можем ли мы хранить 2 различные записи, которые имеют одно значение ключа?
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
27.04.2013, 23:19     Хеш таблицы
Посмотрите здесь:

C++ хеш функции
C++ хеш-таблицы
Хеш функция C++
C++ для чего нужны хеш таблицы?
C++ Уменьшить число коллизий хеш-таблицы
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
27.04.2013, 23:55     Хеш таблицы #2
1. Нет. Те ячейки таблицы, где не лежат элементы, пустуют.
2. Принципиально можно. Это к вас вопрос, допускаются ли различные элементы под одинаковым ключом или максимум один.
cats2013
1 / 1 / 0
Регистрация: 14.04.2013
Сообщений: 17
28.04.2013, 00:09  [ТС]     Хеш таблицы #3
Что - то я ни ка не пойму
Key value
hash value

Это одно и тоже или разные пония
или hash value- значение положения в таблице - индекс,
а Key value - само значение записи - record???
OhMyGodSoLong
~ Эврика! ~
 Аватар для OhMyGodSoLong
1234 / 983 / 42
Регистрация: 24.07.2012
Сообщений: 2,002
28.04.2013, 01:04     Хеш таблицы #4
Нет, не одно и то же.

Key value — это нечто характеризующее конкретный элемент. Hash value — это значение хеш-функции от key value, оно используется как индекс ячейки в хеш-таблице. Key value может совпадать с самим элементом, а может и нет. Если совпадает, то хеш-таблица фактически представляет множество. Если нет — ассоциативный массив. У разных key value могут быть одинаковые hash value.
Yandex
Объявления
28.04.2013, 01:04     Хеш таблицы
Ответ Создать тему
Опции темы

Текущее время: 21:06. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru