La función std::unordered_multimap::insert() es una función integrada en C++ STL que amplía el contenedor insertando un nuevo elemento en unordered_multimap. Esta función aumenta el tamaño del contenedor en uno. La función insert() se puede usar para insertar un solo par clave-valor, un mapa_desordenado completo, inserción de lista inicializada, etc.
Sintaxis:
iterator insert(const_iterator position, const value_type& val);
Parámetros: Este método toma los siguientes parámetros:
- Posición: posición para insertar el elemento
- Valor: valor a insertar
Valor de retorno: este método devuelve un iterador que apunta al elemento recién insertado.
Complejidad del tiempo:
- O (1) en caso promedio
- O(n) en el peor de los casos
Los siguientes programas ilustran la función unordered_multimap::insert :
Programa 1:
CPP
#include <iostream> #include <unordered_map> using namespace std; int main(void) { // Declare unordered_multimap unordered_multimap<char, int> cmap = { { 'B', 2 }, { 'C', 3 }, { 'D', 4 }, { 'E', 5 }, }; // insert a key-value pair using insert() auto pos = cmap.insert(cmap.begin(), pair<char, int>('A', 1)); // print the map with the newly inserted key-value pair for (auto x : cmap) cout << x.first << ": " << x.second << endl; return 0; }
A: 1 B: 2 C: 3 D: 4 E: 5
Programa 2:
CPP
#include <iostream> #include <unordered_map> using namespace std; int main() { // Declare unordered_multimap unordered_multimap<char, int> cmap = { { 'b', 2 }, { 'c', 3 }, { 'd', 4 }, { 'e', 5 }, }; unordered_multimap<char, int> dmap = { { 'A', 1 }, { 'G', 6 } }; // Insert the map from begin to end cmap.insert(dmap.begin(), dmap.end()); // Print the map for (auto x : cmap) cout << x.first << ": " << x.second << endl; return 0; }
G: 6 A: 1 b: 2 c: 3 d: 4 e: 5
Programa 3:
CPP
#include <iostream> #include <unordered_map> using namespace std; int main() { // Declare unordered_multimap unordered_multimap<char, int> cmap = { { 'B', 2 }, { 'C', 3 }, { 'D', 4 }, { 'E', 5 }, }; // Insert a new list cmap.insert({ { 'A', 1 }, { 'F', 6 }, { 'G', 7 } }); // Print the map for (auto x : cmap) cout << x.first << ": " << x.second << endl; return 0; }
G: 7 F: 6 A: 1 B: 2 C: 3 D: 4 E: 5
Publicación traducida automáticamente
Artículo escrito por Chaitanya Tyagi y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA