在映射中插入元素| C ++ STL
map是关联容器。映射以一对键值的形式存储元素,并且已映射的值和键值以排序的方式存储。在map中插入元素所需的时间通常为O(logn)。有多种方法可以在map中插入元素,本文讨论了一些方法。
1)使用insert()
方法
std :: map :: insert()函数是C ++ STL中的内置函数,用于在map中插入元素。我们可以通过以下方式使用此功能:
insert(pair):在map中插入一对。
insert(pos,pair):在map中的指定位置插入一个对。
insert(beg,end):用于将一个map的内容复制到另一个。
示例
#include <iostream>#include <map>
using namespace std;
int main() {
map< char, int > myMap;
//声明迭代器
map<char, int>::iterator it ;
map<char, int>::iterator it1;
//插入(对)示例
myMap.insert( pair<char, int>('P', 100) );
//插入后打印映射元素
cout << "The elements of map after insertion : \n";
for (it1 = myMap.begin(); it1!=myMap.end(); ++it1)
cout << it1->first << " : " << it1->second << endl;
it = myMap.begin();
//insert(pos,pair)的示例
//通过指定位置插入map对
myMap.insert(it, pair<char, int>('Q', 101) );
cout << endl ;
//插入后map中的元素
cout << "The elements of map after insertion using insert(pos, pair) : \n";
for (it1 = myMap.begin(); it1!=myMap.end(); ++it1)
cout << it1->first << " : " << it1->second << endl;
//初始化另一个map
map<char, int> myMap2;
//使用insert(beg_iter,end_iter)复制所有元素
myMap2.insert(myMap.begin(), myMap.end());
cout << endl ;
//map的打印元素
cout << "The elements of new map after using insert(beg_iter, end_iter) : \n";
for (it1 = myMap2.begin(); it1!=myMap2.end(); ++it1)
cout << it1->first << " : " << it1->second << endl;
return 0;
}
输出结果
The elements of map after insertion :P : 100
The elements of map after insertion using insert(pos, pair) :
P : 100
Q : 101
The elements of new map after using insert(beg_iter, end_iter) :
P : 100
Q : 101
以上是 在映射中插入元素| C ++ STL 的全部内容, 来源链接: utcz.com/z/330801.html