C++ Unordered_map Library - insert() Function


The C++ function std::unordered_map::insert() extends container by inserting new element in unordered_map. This function increases container size by one.


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


pair<iterator,bool> insert(const value_type& val);


val − Value to be inserted.

Return value

Returns a pair consisting of bool to indicate whether insertion is happened or not and returns an iterator to the newly inserted element.

Time complexity

Constant i.e. O(1) in average case.

Linear i.e. O(n) in worst case.


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

#include <iostream>
#include <unordered_map>

using namespace std;

int main(void) {
   unordered_map<char, int> um = {
            {'a', 1},
            {'b', 2},
            {'c', 3},

   um.insert(pair<char, int>('d', 4));
   um.insert(pair<char, int>('e', 5));

   cout << "Unordered map contains following elements" << endl;

   for (auto it = um.begin(); it != um.end(); ++it)
      cout << it->first << " = " << it->second << endl;

   return 0;

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

Unordered map contains following elements
e = 5
d = 4
c = 3
a = 1
b = 2
Kickstart Your Career

Get certified by completing the course

Get Started