C++
Использование std :: unordered_map
Поиск…
Вступление
std :: unordered_map - это просто ассоциативный контейнер. Он работает с ключами и их картами. Ключ, когда имена идут, помогает иметь уникальность на карте. Пока отображаемое значение представляет собой только контент, связанный с ключом. Типы данных этого ключа и карты могут быть любыми предопределенными типами данных или определенными пользователем.
замечания
Как следует из названия, элементы в неупорядоченной карте не сохраняются в отсортированной последовательности. Они хранятся в соответствии с их хэш-значениями, и, следовательно, использование неупорядоченной карты имеет много преимуществ, таких как только O (1) для поиска любого элемента из него. Он также быстрее, чем другие контейнеры карт. Из примера видно, что его очень легко реализовать, поскольку оператор ([]) помогает нам напрямую обращаться к отображаемому значению.
Декларация и использование
Как уже упоминалось, вы можете объявить неупорядоченную карту любого типа. Давайте будем иметь неупорядоченную карту с именем first с типом string и integer.
unordered_map<string, int> first; //declaration of the map
first["One"] = 1; // [] operator used to insert the value
first["Two"] = 2;
first["Three"] = 3;
first["Four"] = 4;
first["Five"] = 5;
pair <string,int> bar = make_pair("Nine", 9); //make a pair of same type
first.insert(bar); //can also use insert to feed the values
Некоторые основные функции
unordered_map<data_type, data_type> variable_name; //declaration
variable_name[key_value] = mapped_value; //inserting values
variable_name.find(key_value); //returns iterator to the key value
variable_name.begin(); // iterator to the first element
variable_name.end(); // iterator to the last + 1 element