Однословные идентификаторы плюс, конечно. Но у меня-то длина идентификатора не ограничена, и вообще UTF-8. Вовсе не безумное количество кода нужно. Хэш компактнее, конечно: 130 строчек. AVL дерево 200 строчек кода той же плотности.
Когда парсер заработает, можно будет устроить бенчмарк. Подменить реализацию словаря с ALV tree на hash map и прогнать исходники ядра Юникса. Сравнить объём памяти и количество strcmp супротив вычислений хэша. Узнаем что-то новое.
no subject
Date: 2025-05-19 23:26 (UTC)Вот тут товарищ тестировал hash map против AVL, к примеру: https://medium.com/@ugurdilber1/hash-tables-vs-binary-search-trees-the-ultimate-search-battle-74e20a92c206
Когда парсер заработает, можно будет устроить бенчмарк. Подменить реализацию словаря с ALV tree на hash map и прогнать исходники ядра Юникса. Сравнить объём памяти и количество strcmp супротив вычислений хэша. Узнаем что-то новое.