Skip to content
Related Articles

Related Articles

multimap insert() in C++ STL

View Discussion
Improve Article
Save Article
Like Article
  • Difficulty Level : Easy
  • Last Updated : 23 Jun, 2022

The multimap::insert is a built-in function in C++ STL that is used to insert elements in the multimap container.

  1. Syntax: 
iterator multimap_name.insert({key, element})
  1. Parameters: The function accepts a pair that consists of a key and element which is to be inserted into the multimap container. Return Value: The function returns an iterator pointing to the new element in the container. 

CPP




// C++ program to illustrate
// multimap::insert({key, element})
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
 
    // initialize container
    multimap<int, int> mp;
 
    // insert elements in random order
    mp.insert({ 2, 30 });
    mp.insert({ 1, 40 });
    mp.insert({ 3, 60 });
    mp.insert({ 2, 20 });
    mp.insert({ 5, 50 });
 
    // prints the elements
    cout << "KEY\tELEMENT\n";
    for (auto itr = mp.begin(); itr != mp.end(); ++itr) {
        cout << itr->first
            << '\t' << itr->second << '\n';
    }
    return 0;
}

Output:

KEY    ELEMENT
1    40
2    30
2    20
3    60
5    50

Time Complexity: O(logN), where N is the size of the multimap. 

  1. Syntax: 
iterator multimap_name.insert(iterator position, {key, element})
  1. Parameters: The function accepts two parameters which is described below:
    • {key, element}: this specifies a pair that consists of a key and element which is to be inserted into the multimap container.
    • position: this does not specify the position where the insertion is to be done, it only points a position from where the searching operation for insertion is to be started. The insertion is done according to the order which is followed by the multimap container.
  2. Syntax: 
iterator multimap_name.insert(iterator position1, iterator position2)
  1. Parameters: The function accepts two parameters position1 and position2 which specifies the range of elements. All the elements in the range [position1, last) are inserted in the multimap container. Return Value: The function returns an iterator pointing to the new element in the container. 

CPP




// C++ program to illustrate
// multimap::insert({key, element})
#include <bits/stdc++.h>
using namespace std;
 
int main()
{
 
    // initialize container
    multimap<int, int> mp;
 
    // insert elements in random order
    mp.insert({ 2, 30 });
    mp.insert({ 1, 40 });
 
    auto it = mp.find(2);
 
    // inserts {3, 6} starting the search from
    // position where 2 is present
    mp.insert(it, { 3, 60 });
 
    // prints the elements
    cout << "KEY\tELEMENT\n";
    for (auto itr = mp.begin(); itr != mp.end(); ++itr) {
        cout << itr->first
            << '\t' << itr->second << '\n';
    }
    return 0;
}

Output:

Elements in mp1 are
KEY    ELEMENT
1    40
2    30

Time Complexity: O(logn)


My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!