что такое хорошая реализация хеш-таблицы для C? Я должен использовать его с mpicc компилятором. Удалите функцию, не необходимо.
Один в glib очень хорош. Не уверен, что он слишком велик и / или его можно изолировать от остальной части glib.
В противном случае хеширование Пирсона кажется хорошей отправной точкой для реализации вашего собственного (это хеш-функция, оптимизированная для машин с 8-битными регистрами).
Если все ключи известны заранее, вы можете использовать генератор идеального хэша , чтобы избежать накладных расходов на пространство, которые неявно присутствуют в хэш-таблицах.
Если, с другой стороны, вам действительно нужна полная хеш-таблица, я бы предложил вариант Хеширования кукушки (например, d-арная версия).
Я с удовлетворением использовал упрощенную версию Hopscotch Hashing , которая довольно хорошо работает даже при более высоких факторах нагрузки.