Предположим, я хотел отобразить данные со строкой в качестве ключа.
Какой контейнер следует выбрать, map
или unordered_map
? unordered_map
занимает больше памяти, поэтому допустим, что память не является проблемой, и проблема в скорости.
unordered_map
обычно должна давать среднюю сложность O (1) с наихудшим случаем O (n).
В каких случаях он достигнет O (n)?
Когда map
получает больше времени, чем unordered_map
? Это случается, когда n мало?
Предполагая, что я буду использовать STL unordered_map
со значением по умолчанию haser Vs. карта. строка - это ключ.
Если я собираюсь итерации по элементам, а не доступа к отдельному элементу каждый раз, предпочитаю ли я map
?