pair,map,set

1.pair
pair的作用就是将两个数整合成一个数,如一个数和它所对应的下标,将value与key绑定起来。其实它是用结构体来实现的,pair.first与pair.second

//一种赋值方式
pair<int ,int> p1;
p1.first=1;
p1.second=2;
//定义时直接赋值
pair<int, double> p2(1, 2.4);  //用给定值初始化
//利用make_pair定义
pair<int,float> p;
p=make_pair(1,1.5);

//同时也可以定义stringd的
pair<int,string> p4(5,"super");

容器里面放进pair

vector<pair<int,int> > vec;
//这时候就可以用sort对这容器排序
bool cmp(pair<int,int> &p1,pair<int,int> &p2){
    return p1.first>p2.first         //降序
    //return p1.first<p2.first         //升序
}
sort(vec.begin(),vec.end(),cmp);

2.map
字典,确实经常用到,但是不是很熟练
map中有两个变量,第一个是关键值(key),第二个数值

map<int ,string> mp;
mp.insert(pair<int,string>(1,"one"));//插入

3.set
里面的元素不会重复,set里面会自动排序(从小到大),以后可以利用好这个特性

set<int> vp;
vp.insert(1);//数值插入

vp.erase(1);//数值删除
auto iter=vp.begin();
vp.erase(iter)//迭代器删除
全部评论

相关推荐

点赞 收藏 评论
分享
牛客网
牛客企业服务