Мне любопытно узнать, что такое обоснование, которое может перевесить использование самобалансирующейся древовидной техники для хранения предметов, чем использование хеш-таблицы.
Я вижу, что хеш-таблицы не могут поддерживать порядок вставки, но я всегда мог использовать связанный список сверху для хранения последовательности порядка вставки.
Я вижу, что для небольшого числа значений добавляется стоимость хеш-функции, но я всегда могу сохранить хеш-функцию вместе с ключом для более быстрого поиска.
Я понимаю, что хеш-таблицы сложнее реализовать, чем прямолинейная реализация красно-черного дерева, но при практической реализации никто не захочет пройти лишнюю милю за эту проблему?
Я вижу, что для хеш-таблиц это нормально для коллизий, но с такими методами открытой адресации, как двойное хеширование, которые позволяют сохранять ключи в самой хеш-таблице, разве проблема не сводится к склоняясь в пользу красных черных деревьев для таких реализаций?
Мне любопытно, если я строго упускаю недостаток хеш-таблицы, который все еще делает красно-чёрные деревья вполне жизнеспособной структурой данных в практических приложениях (таких как файловые системы и т. Д.).