STL中pair容器的用法
1、定义pair容器
1 pair <int, int> p, p1; 2 //定义 [int,int] 型容器
//直接初始化了p的内容 pair<string,int>p(1,5);
定义一个pair类型数组 pair<int,int> p1[maxn]
2、交换函数
//p和p1都是pair容器 p.swap(p1);//交换两个容器的内容 //例: p={1,2}, p1={3,4} //运行之后, p={3,4}, p1={1,2}
3、访问pair容器中的值
1 p.first;//返回 p 的第一个内容 2 p.second;//返回 p 的第二个内容 3 //例: p={1,2} 4 //则 p.first=1; p.second=2;
4、比较大小
两个pair类型数据可以直接使用=、!=、<、<=、>、>=比较大小
比较规则是先以first的大小作为标准,只有当first相等时采取判别second的大小
5、向pair数组里面插入值
1 map<string,int> mp; 2 3 mp.insert(make_pair("heihei",5)); 4 5 mp.insert(pair<string,int>("haha",10));
pair<int,int> p1[maxn]; p1[i]= {1,2};
6、排序
pair<int,int> p1[maxn]; sort(p1+1,p1+1+n); //对pair区间[1,n]排序
7、遍历
for(int i=1; i<=n; i++) { if(p1[i]!=p2[i]) { 过程代码; } }
for(map<string, int>::iterator it=p1.begin();it!=p1.end();it++) { cout<<it->first<<" "<<it->second<<endl; }