C ++ STL中的map insert()

在本文中,我们将讨论C ++ STL中map::insert()函数的工作,语法和示例。

什么是C ++ STL中的映射?

映射是关联容器,它有助于按特定顺序存储由键值和映射值的组合形成的元素。在映射容器中,数据始终在内部借助其关联的键进行排序。映射容器中的值通过其唯一键访问。

什么是map::insert()?

map::insert()函数是C ++ STL中的内置函数,该函数在  header file. insert() is used to insert new values to the map container and increases the size of container by the number of elements inserted.

由于映射容器中的键是唯一的,因此插入操作将检查要插入的每个元素是否具有容器中已经存在的键,如果是,则不插入该元素。

同样,映射容器通过其各自的键以升序维护所有元素。因此,每当我们插入一个元素时,它都会根据其键进入其各自的位置。

语法

1. Map_name.insert({key& k, value_type& val});
or
2. Map_name.insert(iterator& it, {key& k, value_type& val});
or
3. Map_name.insert(iterator& position1, iterator& position2);

参数

该函数接受以下参数

  • k-这是与元素关联的键。该函数检查键是否已在容器中,然后不插入元素。

  • val-要插入的值。

  • -这是用来给我们想要要插入的元件的位置的值的迭代器类型。

  • position1,position2-当我们要插入一系列元素时,position1是开始位置,而position2是结束位置,我们可以使用要插入的多个元素的范围。

返回值

此函数将迭代器返回到新插入到映射容器中的元素。

示例

输入值

map<char, int> newmap;
newmap[‘a’] = 1;
newmap[‘b’] = 2;
newmap[‘c’] = 3;
newmap.insert({d, 50});

输出结果

a:1
b:2
c:3
d:50

示例

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP_Map;
   TP_Map.insert({3, 50});
   TP_Map.insert({2, 30});
   TP_Map.insert({1, 10});
   TP_Map.insert({4, 70});
   cout<<"TP Map is : \n";
   cout << "MAP_KEY\tMAP_ELEMENT\n";
   for (auto i = TP_Map.begin(); i!= TP_Map.end(); i++) {
      cout << i->first << "\t" << i->second << endl;
   }
   return 0;
}

输出结果

TP Map is:
MAP_KEY    MAP_ELEMENT
1          10
2          30
3          50
4          70

示例

#include <bits/stdc++.h>
using namespace std;
int main() {
   map<int, int> TP_Map;
   TP_Map.insert({3, 50});
   TP_Map.insert({2, 30});
   TP_Map.insert({1, 10});
   TP_Map.insert({4, 70});
   auto i = TP_Map.find(4);
   TP_Map.insert(i, { 5, 80 });
   cout<<"TP Map is : \n";
   cout << "MAP_KEY\tMAP_ELEMENT\n";
   for (auto i = TP_Map.begin(); i!= TP_Map.end(); i++) {
      cout << i->first << "\t" << i->second << endl;
   }
   return 0;
}

输出结果

TP Map is:
MAP_KEY    MAP_ELEMENT
1             10
2             30
3             50
4             70
5             80