C++ Deque Library - insert() Function


Advertisements

Description

The C++ function std::deque::insert() extends deque by inserting new elements in the container. If reallocation happens storage requirement for this container is fulfilled by internal allocator.

Declaration

Following is the declaration for std::deque::insert() function form std::deque header.

C++98

template <class InputIterator>
void insert (iterator position, InputIterator first, InputIterator last);

C++11

template <class InputIterator>
iterator insert (const_iterator position, InputIterator first, InputIterator last);

Parameters

  • position − Index in the deque where new element to be inserted.

  • first − Input iterator to the initial position in range

  • last − Input iterator to the final position in range

Return value

Returns an iterator which points to the newly inserted element.

Exceptions

If reallocation fails bad_alloc exception is thrown.

Time complexity

Linear i.e. O(n)

Example

The following example shows the usage of std::deque::insert() function.

#include <iostream>
#include <deque>

using namespace std;

int main(void) {

   deque<int> d1 = {3, 4, 5};
   deque<int> d2 = {1, 2};

   d1.insert(d1.begin(), d2.begin(), d2.end());

   cout << "Content of deque are" << endl;

   for (auto it = d1.begin(); it != d1.end(); ++it)
      cout << *it << endl;

   return 0;
}

Let us compile and run the above program, this will produce the following result −

Content of deque are
1
2
3
4
5
deque.htm
Advertisements