Почему хеш-карты лучше, чем trie-карты?

Под trie-картой я подразумеваю ассоциативный массив, в котором полезные данные хранятся в trie вместо хеш-таблицы.

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

Мне действительно кажется, что это потребует намного больше памяти при кодировании небольших объектов (даже если в ключах разрешены только строчные буквы, это 26 указателей на узел и часто несколько узлов на ключ), но на плюс, вам никогда не придется беспокоиться об изменении размера. Почему хэш-карты так распространены, но я никогда не видел trie-карту?

6
задан Fred Foo 8 April 2011 в 08:30
поделиться