у меня есть std::vector
(неупорядоченный), и для его конкретных элементов (по их индексу) я должен вызывать метод каждый цикл в бесконечный цикл.
Но иногда (может быть, каждый 30.000-й цикл) я хочу искать в них по элементу элементов. (std::string
)
Должен ли я создать unordered_map ускорить этот поиск, или это не стоит избыточности?
(Элементы после добавления их в контейнер не удаляются, не перемещаются и т. Д., Они используются только.)
Поэтому, когда я добавляю элемент в вектор, я также добавляю pair<std::string, integer>
на неупорядоченную карту.
Таким образом, когда я ищу по его «имени», я могу быстро получить его индекс
Вместо того, чтобы медленно проходить через вектор и сравнивать строки.
(Я думаю, что unordered_map’s at()
быстрее, чем много строк сравнения. Поправьте меня если я ошибаюсь.)
Задача ещё не решена.
Других решений пока нет …