手机上自己做网站,手机营销网站制作,seo 工具分析,做网站建本地环境作用目录
map构造和赋值
map大小和交换
map插入和删除
map查找和统计
map排序 map构造和赋值
map中所有元素都是pair#xff08;即一对#xff09;
pair中第一个元素为key#xff08;键值#xff09;#xff0c;起到索引作用#xff0c;第二个元素为value#xff08;…目录
map构造和赋值
map大小和交换
map插入和删除
map查找和统计
map排序 map构造和赋值
map中所有元素都是pair即一对
pair中第一个元素为key键值起到索引作用第二个元素为value实值
所有元素根据元素键值自动排序
//author:至尊宝
//time:2024.5.9
#includeiostream
#includecstring
#includemap
using namespace std;
void printMap(mapint, int m)
{for (mapint, int::iterator it m.begin(); it ! m.end(); it){cout key (*it).first value (*it).second endl;}cout endl;
}
void test01()
{mapint, intm;m.insert(pairint, int(1, 10));m.insert(pairint, int(2, 20));m.insert(pairint, int(3, 30));m.insert(pairint, int(4, 40));printMap(m);//拷贝构造mapint, intm2(m);printMap(m2);//赋值mapint, intm3;m3 m2;printMap(m3);
}int main()
{test01();
}
map大小和交换
size返回容器中元素的数目
empty判断容器是否为空
swap交换两个集合容器
//author:至尊宝
//time:2024.5.9
#includeiostream
#includecstring
#includemap
using namespace std;
void printMap(mapint, int m)
{for (mapint, int::iterator it m.begin(); it ! m.end(); it){cout key (*it).first value (*it).second endl;}cout endl;
}
void test01()
{mapint, intm;m.insert(pairint, int(1, 10));m.insert(pairint, int(2, 20));m.insert(pairint, int(3, 30));if (m.empty()){cout m为空 endl;}else{cout m不为空 endl;cout m的大小为 m.size() endl;}
}
//交换
void test02()
{mapint, intm;m.insert(pairint, int(1, 10));m.insert(pairint, int(2, 20));m.insert(pairint, int(3, 30));mapint, intm2;m2.insert(pairint, int(4, 100));m2.insert(pairint, int(5, 200));m2.insert(pairint, int(6, 300));cout 交换前 endl;printMap(m); printMap(m2);cout 交换后 endl;m.swap(m2);printMap(m); printMap(m2);
}int main()
{test02();
}
map插入和删除
insert()在容器中插入元素
clear()清除所有元素
erase(pos)删除pos迭代器所指的元素返回下一个元素的迭代器
erase(beg,end)删除区间begend的所有元素返回下一个元素的迭代器
erase(key)删除容器中值为key的元素
//author:至尊宝
//time:2024.5.9
#includeiostream
#includecstring
#includemap
using namespace std;
void printMap(mapint, int m)
{for (mapint, int::iterator it m.begin(); it ! m.end(); it){cout key (*it).first value (*it).second endl;}cout endl;
}
void test01()
{mapint, intm;//插入m.insert(pairint, int(1, 10));m.insert(make_pair(2, 20));m.insert(mapint, int::value_type(3, 30));m[4] 40;//删除m.erase(m.begin());printMap(m);m.erase(3);//按照key来删printMap(m);m.erase(m.begin(), m.end());//m.clear()printMap(m);
}
//交换
void test02()
{}int main()
{test01();
}
map查找和统计
find(key)查找key是否存在返回该键的元素的迭代器若不存在返回set.end()
count(key)统计key元素个数
//author:至尊宝
//time:2024.5.9
#includeiostream
#includecstring
#includemap
using namespace std;
void printMap(mapint, int m)
{for (mapint, int::iterator it m.begin(); it ! m.end(); it){cout key (*it).first value (*it).second endl;}cout endl;
}
void test01()
{mapint, intm;m.insert(pairint, int(1, 10));m.insert(pairint, int(2, 20));m.insert(pairint, int(3, 30));mapint, int::iterator pos m.find(3);if (pos ! m.end()){cout 找到了元素key (*pos).first value (*pos).second endl;}else{cout no endl;}//统计//map不允许插入重复的key元素int num m.count(3);cout num;
}
void test02()
{}int main()
{test01();
}
map排序
//author:至尊宝
//time:2024.5.9
#includeiostream
#includecstring
#includemap
using namespace std;
class MyCompare
{
public:bool operator()(int v1,int v2)const{//降序return v1 v2;}
};
void test01()
{mapint, int, MyComparem;m.insert(pairint, int(1, 10));m.insert(make_pair(2, 20));m.insert(make_pair(3, 30));m.insert(make_pair(4, 40));m.insert(make_pair(5, 50));m.insert(make_pair(6, 60));for (mapint, int, MyCompare::iterator it m.begin(); it ! m.end(); it){cout key it-first value it-second endl;}}int main()
{test01();
}