C++中map的迭代器操作

xiaoxiao2021-02-28  78

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; }

数据不可重:


数据按照第一关键字排序:

转载请注明原文地址: https://www.6miu.com/read-83815.html

最新回复(0)