C++
Met std :: unordered_map
Zoeken…
Invoering
std :: unordered_map is slechts een associatieve container. Het werkt op toetsen en hun kaarten. Sleutel zoals de namen zegt, helpt om uniekheid op de kaart te hebben. Terwijl de toegewezen waarde slechts een inhoud is die aan de sleutel is gekoppeld. De gegevenstypen van deze sleutel en kaart kunnen van het vooraf gedefinieerde gegevenstype of door de gebruiker gedefinieerd zijn.
Opmerkingen
Zoals de naam al zegt, worden de elementen op een ongeordende kaart niet in gesorteerde volgorde opgeslagen. Ze worden opgeslagen op basis van hun hash-waarden en daarom heeft het gebruik van een ongeordende kaart veel voordelen, omdat er slechts O (1) voor nodig is om er een item uit te zoeken. Het is ook sneller dan andere kaartcontainers. Uit het voorbeeld is ook te zien dat het heel eenvoudig te implementeren is omdat de operator ([]) ons helpt direct toegang te krijgen tot de toegewezen waarde.
Verklaring en gebruik
Zoals reeds vermeld, kunt u een ongeordende kaart van elk type declareren. Laten we een ongeordende kaart als eerste noemen met tekenreeks en het type geheel getal.
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
Enkele basisfuncties
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