Unordered Map: все, что вы должны знать
Unordered map - это одна из реализаций ассоциативного контейнера в C++, предоставляющая быстрый доступ к элементам по ключу в виде хэш-таблицы.
Хэш-таблица - это структура данных, использующая хэширование для быстрого поиска значений. Она состоит из набора ячеек, в которых хранятся элементы. Каждый элемент имеет ключ и значение, которые связываются между собой.
Unordered map позволяет использовать любой тип данных в качестве ключа, который поддерживает операцию хэширования и оператор сравнения (например, int, string, struct).
Пример создания unordered map:
c++
#include
#include
int main() {
std::unordered_map map; // создание пустой unordered map
map.insert({1, "один"}); // добавление элементов в unordered map
map.insert({2, "два"});
map.insert({3, "три"});
std::cout << map[1] << std::endl; // доступ к элементу по ключу
return 0;
}
В данном примере создается пустой unordered map, который индексируется целочисленными ключами и хранит значения в виде строк. Затем в unordered map добавляются три элемента с ключами 1, 2 и 3 и соответствующими значениями.
Для доступа к элементам по ключу используется оператор [], который возвращает ссылку на значение элемента. Таким образом, в данном примере выводится на экран значение элемента с ключом 1, то есть "один".
Unordered map также предоставляет множество методов для работы с элементами и их ключами, например, erase(), clear(), count() и т.д.
В заключение можно отметить, что unordered map является очень полезной структурой данных для быстрого доступа к элементам без необходимости сортировки ключей. Она подходит для решения различных задач, включая поиск и хранение информации.