C++ Deque Library - erase() Function


Advertisements

Description

The C++ function std::deque::erase() removes single element from the the deque and decreases size by one.

Declaration

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

C++98

iterator erase (iterator position);

C++11

iterator erase (const_iterator position );

Parameters

position − Iterator points to the deque element.

Return value

Returns a random access iterator which points to the location from where element was removed.

Exceptions

If position is invalid then behavior is undefined.

Time complexity

Linear i.e. O(n)

Example

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

#include <iostream>
#include <deque>

using namespace std;

int main(void) {

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

   cout << "Contents of deque before erase operation" << endl;

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

   d.erase(d.begin());

   cout << "Contents of deque after erase operation" << endl;

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

   return 0;
}

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

Contents of deque before erase operation
1
2
3
4
5
Contents of deque after erase operation
2
3
4
5
deque.htm
Advertisements