The deque::insert() function is a built-in function in C++ which is used to insert elements in the deque. The insert() function can be used in three ways:
- Extends deque by inserting a new element val at a position.
- Extends deque by inserting n new element of value val in the deque.
- Extends deque by inserting new element in the range [first, last).
Syntax:
deque_name.insert (iterator position, const value_type& val)
or
deque_name.insert (iterator position, size_type n, const value_type& val)
or
deque_name.insert (iterator position, InputIterator first, InputIterator last)
Parameters: The function accepts four parameters which are specified as below:
- position – Specifies the position where the element/elements are to be inserted.
- val – specifies the value to be assigned to newly inserted element.
- n – specifies the number of elements to insert. Each element is initialized to a copy of val.
- first, last – specifies the iterators specifying a range of elements which is to be inserted. The range includes all the elements between first and last, including the element pointed by first but not the one pointed by last.
Return value: The function returns an iterator that points to the first of the newly inserted elements. Below programs illustrate the above function: Program 1:
CPP
#include <bits/stdc++.h>
using namespace std;
int main()
{
deque< int > dq = { 1, 2, 3, 4, 5 };
deque< int >::iterator it = dq.begin();
++it;
it = dq.insert(it, 10);
std::cout << "Deque contains:" ;
for (it = dq.begin(); it != dq.end(); ++it)
cout << ' ' << *it;
cout << '\n' ;
return 0;
}
|
Output:
Deque contains: 1 10 2 3 4 5
Time Complexity: O(n)
Auxiliary Space: O(1)
Program 2:
CPP
#include <bits/stdc++.h>
using namespace std;
int main()
{
deque< int > dq = { 1, 2, 3, 4, 5 };
deque< int >::iterator it = dq.begin();
dq.insert(it, 2, 0);
std::cout << "Deque contains:" ;
for (it = dq.begin(); it != dq.end(); ++it)
cout << ' ' << *it;
cout << '\n' ;
return 0;
}
|
Output:
Deque contains: 0 0 1 2 3 4 5
Time Complexity: O(n)
Auxiliary Space: O(1)
Program 3:
CPP
#include <bits/stdc++.h>
using namespace std;
int main()
{
deque< int > dq = { 1, 2, 3, 4, 5 };
deque< int >::iterator it = dq.begin();
++it;
vector< int > v(2, 10);
dq.insert(it, v.begin(), v.end());
std::cout << "Deque contains:" ;
for (it = dq.begin(); it != dq.end(); ++it)
cout << ' ' << *it;
cout << '\n' ;
return 0;
}
|
Output:
Deque contains: 1 10 10 2 3 4 5
Time Complexity: O(n)
Auxiliary Space: O(1)
Whether you're preparing for your first job interview or aiming to upskill in this ever-evolving tech landscape,
GeeksforGeeks Courses are your key to success. We provide top-quality content at affordable prices, all geared towards accelerating your growth in a time-bound manner. Join the millions we've already empowered, and we're here to do the same for you. Don't miss out -
check it out now!
Last Updated :
14 Jun, 2022
Like Article
Save Article