C++中map的迭代器操作
可以直接插入pair类型,也可以进行直接赋值
pair类型的左边是第一关键字,右边是第二关键字,显然,map是由红黑树封装起来的,所以支持动态维护平衡树,因此,遍历map的时候第一关键字的数据是有序的
#include<cstdio>
#include<iostream>
#include<cstring>
#include<map>
#include<vector>
#include<queue>
#define MAXN
using namespace std;
int n,x,y;
int main(){
ios::sync_with_stdio(false);
//freopen(".txt","r",stdin);
//freopen(".out","w",stdout);
map<int,int>m;//
// pair<int,int>p (1,2);
m.insert(pair<int,int>(1,2));
cin>>n;
for(register int i=1;i<=n;i++){
cin>>x>>y;
pair<int,int> p (x,y);
m.insert(p);
} cout<<endl;//所以map的第一关键字是不能重复的,因为map是映射,也就是函数的定义,因此数据结构里存储的首先映射的内容
for(register map<int,int>::iterator i=m.begin();i!=m.end();i++){
pair<int,int>it=*i;
cout<<it.first<<" "<<it.second<<endl;
}
return 0;
}