set
使用场景:
底层实现为红黑树,默认排序,适合搜索数组中的某一个元素使用。
简单使用
set<int> s1 = {1,3,4,5};
s1.insert(2);
s1.erase(3);
for(auto &i:s1)
cout<<i<< " ";
cout<<endl;
输出:1 2 3 4 5
map
使用场景:
底层为红黑树实现,所有元素会根据元素的键值自动被排序,适合查询某一元素所映射的另一元素
简单实用
// 初始化
map<int,string> mis = {
pair<int,string>(1,"a"),
pair<int,string>(2,"b")
};
// insert
mis.insert(pair<int,string>(3,"c"));
// 方法2:插入
mis[3] = "d"; // 覆盖key = 3 的内容
// 删除元素 c.erase(val)
mis.erase(1);
//遍历
map<int,string>::iterator itr;
for(itr = mis.begin();itr !=mis.end();++itr){
cout<<itr->first<<":"<<itr->second<<endl;
}
输出:
2:b
3:d