Open In App

deque insert() function in C++ STL

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:

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:

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 program to illustrate the
// deque::insert() function
// insert elements by iterator
#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); // 1 10 2 3 4 5
 
 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 program to illustrate the
// deque::insert() function
// program for second syntax
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
 deque<int> dq = { 1, 2, 3, 4, 5 };
 
 deque<int>::iterator it = dq.begin();
 
 // 0 0 1 2 3 4 5
 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 program to illustrate the
// deque::insert() function
// program for third syntax
#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);
 
 // 1 10 10 2 3 4 5
 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)


Article Tags :
C++