Comments 4
"профессора Катлер" (не КатлерА) — профессор Барб Катлер — женщина (https://www.cs.rpi.edu/~cutler/).
Недавно в одном из чатов по Rust поднимался вопрос производительности HashMap/HashSet в Rust по сравнению с Java. Краткий результат дискуссии - чтобы работало быстро нужно создавать HashMap/HashSet со своим хэшером, который считает хэш на основе простой операции вроде xor, например так. Используемый по умолчанию хэшер ориентирован на безопасность, поэтому работает медленнее.
Или можно не приседать с написанием своего хешера вручную и взять уже готовый, например, ahash, который даже обёртки предоставляет, позволяющий просто поменять HashMap
на ahash::AHashMap
.
У разработчиков языка, к слову, это в книге упоминается. Алгоритм, который использует HashMap соответственно SipHash. Ну, и лучше, наверное, вместо своих реализаций крейт подключить по типу этого. Как говорится, всё уже придумано за нас)
Интеллектуальный брутфорс: пишем головоломку и солвер для неё