Re: Эффективная реализация HashMap когда ключи знаем заранее
От: watchmaker  
Дата: 12.04.18 08:37
Оценка: 1 (1) +4
Здравствуйте, PrelaunchCalibration, Вы писали:


PC>Посоветуйте что почитать про более эффективную реализацию HashMap , когда множество ключей известно заранее.


Ну конечно же perfect hash function.


PC>(особенно интересует оптимизация по памяти)

It has been proven that a general purpose minimal perfect hash scheme requires at least 1.44 bits/key. The best currently known minimal perfect hashing schemes can be represented using less than 2.1 bits/key

Примерно так на практике и выходит.
Re: Эффективная реализация HashMap когда ключи знаем заранее
От: GarryIV  
Дата: 15.04.18 18:05
Оценка: 1 (1) +1
Здравствуйте, PrelaunchCalibration, Вы писали:

PC>Посоветуйте что почитать про более эффективную реализацию HashMap (особенно интересует оптимизация по памяти), когда множество ключей известно заранее.


Может и не нужен хэшмап? Раз все ключи известны можно же их пронумеровать и использовать номер как индекс в массиве. Это если типичный мап содержит большинство ключей и их не слишком много.
В любом случае для достижения максимальной эффективности надо анализироать набор ключей и характерные их наборы в таблицах.
Стандартные таблицы и так хорошо оптимизированы для общего случая.
WBR, Igor Evgrafov
Отредактировано 15.04.2018 18:15 GarryIV . Предыдущая версия .
Эффективная реализация HashMap когда ключи знаем заранее
От: PrelaunchCalibration  
Дата: 12.04.18 08:16
Оценка:
Уважаемые коллеги,

Посоветуйте что почитать про более эффективную реализацию HashMap (особенно интересует оптимизация по памяти), когда множество ключей известно заранее.

Заранее спасибо
algorithms hashtable
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.