logo

vector insert() Funktion in C++ STL

std::vector::insert() ist eine in C++ STL integrierte Funktion, die neue Elemente vor dem Element an der angegebenen Position einfügt und so die Containergröße effektiv um die Anzahl der eingefügten Elemente erhöht.

Zeitkomplexität – Linear, O(N)



Die Einfügefunktion ist überladen, um mehrere Fälle zu bearbeiten, die wie folgt sind:

  1. Fügen Sie ein Element am angegebenen Index ein.
  2. Fügen Sie ein Element mehrmals ein.
  3. Fügen Sie einen Bereich von Elementen am angegebenen Index ein.

1. Fügen Sie ein Element am angegebenen Index ein

Syntax von insert() in Vector

vector_name.insert (position, val);>

Parameter

Die Funktion akzeptiert zwei unten angegebene Parameter:

  • Position Es gibt den Iterator an, der auf die Position zeigt, an der die Einfügung erfolgen soll.
  • val Es gibt den einzufügenden Wert an.

Beispiel für insert() im Vektor

C++








// C++ program to illustrate the function of> // vector_name.insert(position,val)> #include> using> namespace> std;> > int> main()> {> > >// Initialising the vector> >vector<>int>>Vektorname{ 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)>

Java-Softwaremuster
>

>

Ausgabe

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. Fügen Sie mehrere Elemente am angegebenen Index ein

Syntax von insert() in Vector

vector_name.insert(position, size, val)>

Parameter

Die Funktion akzeptiert drei Parameter, die wie folgt angegeben sind:

  • Position Es gibt den Iterator an, der auf die Position zeigt, an der die Einfügung erfolgen soll.
  • Größe Es gibt an, wie oft ein Wert an der angegebenen Position eingefügt werden soll.
  • val Es gibt den einzufügenden Wert an.

Beispiel für insert() in 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>>Vektorname{ 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)>

>

>

Ausgabe

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. Fügen Sie den Bereich der Elemente am angegebenen Index ein

Syntax von Vector insert()

vector_name.insert(position, iterator1, iterator2)>

Parameter

Die Funktion akzeptiert drei unten angegebene Parameter:

  • Position Es gibt die Position an, an der im Vektor eingefügt werden soll.
  • iterator1 Es gibt die Startposition an, ab der die Elemente eingefügt werden sollen
  • iterator2 Es gibt die Endposition an, bis zu der Elemente eingefügt werden sollen

Beispiel für Vector insert()

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)>

Struktur-Array-C-Programmierung
>

>

Ausgabe

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>