enumerar la función emplace() en C++ STL

La list::emplace() es una función integrada en C++ STL que amplía la lista insertando un nuevo elemento en una posición determinada. Sintaxis:

list_name.emplace(position, element)

Parámetros: La función acepta dos parámetros obligatorios que se describen a continuación:

  • position : especifica el iterador que apunta a la posición en la lista donde se insertará el nuevo elemento.
  • args : especifica los elementos que se insertarán en el contenedor de la lista.

Valor de retorno: Devuelve un iterador de acceso aleatorio que apunta al elemento recién insertado. Los siguientes programas ilustran la función anterior: Programa 1: 

CPP

// C++ program to illustrate the
// list::emplace() function
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
 // declaration of list
 list<int> lis = { 5, 6, 7, 8, 9, 10 };
 
 auto it = lis.emplace(lis.begin(), 2);
 
 // inserts at the beginning of the list
 lis.emplace(it, 1);
 
 cout << "List: ";
 for (auto it = lis.begin(); it != lis.end(); ++it)
  cout << *it << " ";
 
 return 0;
}
Producción:

List: 1 2 5 6 7 8 9 10

Complejidad de tiempo: O(n)

Espacio Auxiliar: O(1)

Programa 2: 

CPP

// C++ program to illustrate the
// list::emplace() function
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
 // declaration of list
 list<pair<int, char> > lis;
 
 // inserts at the beginning of the list
 auto it = lis.emplace(lis.begin(), 4, 'a');
 
 // inserts at the beginning of the list
 lis.emplace(it, 3, 'b');
 
 cout << "List: ";
 
 for (auto it : lis)
  cout << "(" << it.first << ", " << it.second << ") ";
 
 return 0;
}
Producción:

List: (3, b) (4, a)

Complejidad de tiempo: O(n)

Espacio Auxiliar: O(1)

Publicación traducida automáticamente

Artículo escrito por Twinkl Bajaj y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *