logo

Función vector insert() en C++ STL

std::vector::insertar() es una función incorporada en C++ STL que inserta nuevos elementos antes del elemento en la posición especificada, aumentando efectivamente el tamaño del contenedor por la cantidad de elementos insertados.

Complejidad del tiempo – Lineal, O(N)



La función de inserción está sobrecargada para funcionar en varios casos, que son los siguientes:

  1. Inserte un elemento en el índice dado.
  2. Inserta un elemento varias veces.
  3. Inserte una variedad de elementos en el índice dado.

1. Insertar un elemento en el índice dado

Sintaxis de insert() en Vector

vector_name.insert (position, val);>

Parámetros

La función acepta dos parámetros especificados a continuación:

  • posición Especifica el iterador que apunta a la posición donde se realizará la inserción.
  • vale Especifica el valor a insertar.

Ejemplo de insertar() en vector

C++








// C++ program to illustrate the function of> // vector_name.insert(position,val)> #include> using> namespace> std;> > int> main()> {> > >// Initialising the vector> >vector<>int>>nombre_vector{ 1, 2, 3, 4, 5 };> > >// Printing out the original vector> >cout <<>'Original vector : '>;> >for> (>auto> x : vector_name)> >cout << x <<>' '>;> >cout <<>' '>;> > >// Inserting the value 100 at position 3(0-based> >// indexing) in the vector> >vector_name.insert(vector_name.begin() + 3, 100);> > >// Printing the modified vector> >cout <<>'Vector after inserting 100 at position 3 : '>;> >for> (>auto> x : vector_name)> >cout << x <<>' '>;> >cout <<>' '>;> > >// Inserting the value 500 at position 1(0-based> >// indexing) in the vector> >vector_name.insert(vector_name.begin() + 1, 500);> > >// Printing the modified vector> >cout <<>'Vector after inserting 500 at position 1 : '>;> >for> (>auto> x : vector_name)> >cout << x <<>' '>;> >return> 0;> }> > // This code is contributed by Abhijeet Kumar(abhijeet19403)>

excepción de lanzamiento de Java
>

>

Producción

Original vector : 1 2 3 4 5 Vector after inserting 100 at position 3 : 1 2 3 100 4 5 Vector after inserting 500 at position 1 : 1 500 2 3 100 4 5>

2. Insertar varios elementos en el índice dado

Sintaxis de insert() en Vector

vector_name.insert(position, size, val)>

Parámetros

La función acepta tres parámetros especificados a continuación:

  • posición Especifica el iterador que apunta a la posición donde se realizará la inserción.
  • tamaño Especifica el número de veces que se insertará un valor en la posición especificada.
  • vale Especifica el valor a insertar.

Ejemplo de insertar() en Vector

C++




// C++ program to illustrate the function of> // vector_name.insert(position,size,val)> #include> using> namespace> std;> > int> main()> {> > >// Initialising the vector> >vector<>int>>nombre_vector{ 1, 2, 3, 4, 5 };> > >// Printing out the original vector> >cout <<>'Original vector : '>;> >for> (>auto> x : vector_name)> >cout << x <<>' '>;> >cout << endl;> > >// Inserting the value 100, 4 times starting at position> >// 3> >vector_name.insert(vector_name.begin() + 3, 4, 100);> > >// Printing the modified vector> >cout <<>'Vector after inserting 100, 4 times, starting '> >'at position 3 : '>;> >for> (>auto> x : vector_name)> >cout << x <<>' '>;> >return> 0;> }> > // This code contributed by Harsh Singh (hsnooob)>

>

>

Producción

Original vector : 1 2 3 4 5 Vector after inserting 100, 4 times, starting at position 3 : 1 2 3 100 100 100 100 4 5>

3. Insertar el rango de elementos en el índice dado

Sintaxis de inserción de vector()

vector_name.insert(position, iterator1, iterator2)>

Parámetros

La función acepta tres parámetros especificados a continuación:

  • posición Especifica la posición en la que se realizará la inserción en el vector.
  • iterador1 Especifica la posición inicial desde la que se insertarán los elementos.
  • iterador2 Especifica la posición final hasta la cual se insertarán los elementos.

Ejemplo de inserción de vector()

C++




// C++ program to illustrate the function of> // vector_name.insert(position,itr1,itr2)> #include> using> namespace> std;> > int> main()> {> > >// Initialising the vector> >vector<>int>>original{ 1, 2, 3, 4, 5 };> > >vector<>int>>temp{ 2, 5, 9, 0, 3, 10 };> > >// Printing out the original vector> >cout <<>'Original vector : '>;> >for> (>auto> x : original)> >cout << x <<>' '>;> >cout << endl;> > >// Inserting the portion of temp vector in original> >// vector temp.begin()+3 is starting iterator of vector> >// to be copied temp.begin()+5 is ending iterator of> >// vector to be copied> >original.insert(original.begin() + 3, temp.begin() + 2,> >temp.begin() + 5);> > >// Printing the modified vector> >cout <<>'Vector after Inserting the portion of temp '> >'vector in original vector : '>;> >for> (>auto> x : original)> >cout << x <<>' '>;> >return> 0;> }> > // This code contributed by Harsh Singh (hsnooob)>

variable variable java

>

>

Producción

Original vector : 1 2 3 4 5 Vector after Inserting the portion of temp vector in original vector : 1 2 3 9 0 3 4 5>