当前位置: 首页 > news >正文

产品网站免费模板下载地址a5源码网站

产品网站免费模板下载地址,a5源码网站,张江网站建设,在线个人资料制作网站文章目录 set/multiset容器set基本概念简介区别 set的构造和赋值功能描述函数原型代码示例运行结果 set的大小和交换功能描述函数原型代码示例运行结果 set的插入和删除功能描述函数原型代码示例运行结果 set查找和统计函数原型代码示例运行结果 set和multiset区别区别代码示例… 文章目录 set/multiset容器set基本概念简介区别 set的构造和赋值功能描述函数原型代码示例运行结果 set的大小和交换功能描述函数原型代码示例运行结果 set的插入和删除功能描述函数原型代码示例运行结果 set查找和统计函数原型代码示例运行结果 set和multiset区别区别代码示例运行结果 pair队组创建功能描述创建方式代码示例运行结果 set容器排序代码示例 map容器map基本概念简介本质优点map和multimap区别 map的构造和赋值函数原型代码示例 map大小和交换代码示例 map插入和删除函数原型代码示例 map查找和统计函数原型代码示例 map容器排序主要技术点代码示例 set/multiset容器 set基本概念 简介 所有元素都会在插入时被自动排序 set/multiset属于关联式容器底层结构是用二叉树实现 区别 set不允许容器中有重复的元素 multiset允许容器中有重复的元素 set的构造和赋值 功能描述 创建set容器及赋值 函数原型 代码示例 #include iostream #include setusing namespace std;void printSet(const setint s) {for (setint::const_iterator it s.begin(); it ! s.end(); it) {cout *it ;}cout endl; }void test() {// 默认构造setint s1;s1.insert(1);s1.insert(3);s1.insert(4);printSet(s1);// 拷贝构造setint s2(s1);printSet(s2);// 重载等号操作符setint s3 s1;printSet(s3); }int main() {test();return 0; }运行结果 set的大小和交换 功能描述 统计set大小及交换set容器 函数原型 代码示例 #include iostream #include setusing namespace std;void printSet(const setint s) {for (setint::const_iterator it s.begin(); it ! s.end(); it) {cout *it ;}cout endl; }void test() {// 默认构造setint s1;s1.insert(1);s1.insert(3);s1.insert(2);s1.insert(4);printSet(s1);cout set容器的大小 s1.size() endl;cout set容器是否为空 s1.empty() endl;setint s2;s2.insert(7);s2.insert(5);cout 交换前 endl;printSet(s1);printSet(s2);s1.swap(s2);cout 交换后 endl;printSet(s1);printSet(s2); }int main() {test();return 0; }运行结果 set的插入和删除 功能描述 set容器进行插入和删除数据 函数原型 代码示例 #include iostream #include setusing namespace std;void printSet(const setint s) {for (setint::const_iterator it s.begin(); it ! s.end(); it) {cout *it ;}cout endl; }void test() {// 默认构造setint s1;for (int i 0; i 10; i) {// 使用insert向容器中插入元素s1.insert(i);}printSet(s1);cout erase删除指定位置的元素:;s1.erase(s1.begin());cout erase删除给定元素:;s1.erase(3);printSet(s1);cout erase 清空;s1.erase(s1.begin(), s1.end());printSet(s1);cout clear 清空;s1.clear(); }int main() {test();return 0; }运行结果 set查找和统计 函数原型 代码示例 #include iostream #include setusing namespace std;void printSet(const setint s) {for (setint::const_iterator it s.begin(); it ! s.end(); it) {cout *it ;}cout endl; }void test() {// 默认构造setint s1;for (int i 0; i 10; i) {// 使用insert向容器中插入元素s1.insert(i);}printSet(s1);setint::iterator pos s1.find(5);if (pos ! s1.end()) {cout 找到了 endl;} else {cout 没找到 endl;}cout 统计给定值的出现次数;int count s1.count(2);// 对于set而言统计的结果要么是1要么是0cout count endl; }int main() {test();return 0; }运行结果 set和multiset区别 区别 set不可以插入重复数据而multiset可以 set插入数据的同时会返回插入结果表示插入是否成功 multiset不会检测数据因此可以插入重复数据 代码示例 #include iostream #include setusing namespace std;void printSet(const multisetint s) {for (multisetint::const_iterator it s.begin(); it ! s.end(); it) {cout *it ;}cout endl; }void test1() {setint s;pairsetint::iterator, bool ret s.insert(1);if (ret.second) {cout 第一次插入成功 endl;} else {cout 第一次插入失败 endl;}ret s.insert(1);if (ret.second) {cout 第二次插入成功 endl;} else {cout 第二次插入失败 endl;} }void test2() {// 默认构造multisetint s1;s1.insert(1);s1.insert(1);s1.insert(2);s1.insert(4);s1.insert(4);s1.insert(4);printSet(s1);int count s1.count(4);cout 4的数量 count endl; }int main() {test1();test2();return 0; }运行结果 pair队组创建 功能描述 成对出现数据利用队组可以返回两个数据 创建方式 代码示例 #include iostreamusing namespace std;void test() {pairint, int p1(1, 1);cout p1.first p1.second endl;pair string, string p2 make_pair(Tom, cat);cout p2.first p2.second endl;}int main() {test();return 0; }运行结果 set容器排序 set默认插入的时候是从小到大排序的 利用仿函数可以实现从大到小排序 代码示例 #include iostream #include setusing namespace std;class Person { public:Person(string name, int age) {this-name name;this-age age;}// 对于自定义的数据类型需要指定排序规则 // bool operator(const Person p) const { // if (name p.name) { // return true; // } else if (name p.name) { // return false; // } else { // return age p.age; // } // } //string name;int age; };class comparePerson{ public:bool operator()(const Person p1, const Person p2) {return p1.age p2.age;} };void printPersonSet(const set Person s) {for (setPerson::const_iterator it s.begin(); it ! s.end(); it) {cout name (*it).name age: (*it).age endl;} }void test() {Person p1(sad1, 1);Person p2(sad2, 2);Person p3(sad3, 3);Person p4(sad4, 4);Person p5(sad5, 5);Person p6(sad6, 6);Person p7(sad6, 5);set Person, comparePerson s1;s1.insert(p1);s1.insert(p2);s1.insert(p3);s1.insert(p4);s1.insert(p5);s1.insert(p6);s1.insert(p7);for (setPerson::const_iterator it s1.begin(); it ! s1.end(); it) {cout name (*it).name age: (*it).age endl;} }int main() {test();return 0; }map容器 map基本概念 简介 map中所有元素都是pair pair中第一个元素为key (键值)起到索引作用第二个元素为value (实值) 所有元素都会根据元素的键值自动排序 本质 map/multimap属于关联式容器底层结构是用二叉树实现 优点 可以根据key值快速找到value值 map和multimap区别 map中不允许有重复的key值元素 multimap中不允许有重复的key值元素 map的构造和赋值 函数原型 代码示例 #include iostream #include mapusing namespace std;void printMap(mapint, int mp) {for (mapint, int::iterator it mp.begin(); it ! mp.end(); it) {cout (*it).first (*it).second \t;}cout endl; }void test() {cout 默认构造函数;mapint, int mp;for (int i 0; i 5; i) {mp[i] i;}printMap(mp);cout 拷贝构造函数;mapint, int mp1(mp);printMap(mp1);cout 重载等号操作符;mapint, int mp2 mp;printMap(mp2); }int main() {test();return 0; }map大小和交换 代码示例 #include iostream #include mapusing namespace std;void printMap(mapint, int mp) {for (mapint, int::iterator it mp.begin(); it ! mp.end(); it) {cout (*it).first (*it).second \t;}cout endl; }void test() {cout 默认构造函数;mapint, int mp;for (int i 0; i 5; i) {mp[i] i;}printMap(mp);cout mp大小: mp.size() endl;if (mp.empty()) {cout mp为空 endl;} else {cout mp不为空 endl;}mapint, int mp1;for (int i 5; i 0; i--) {mp1[i] i;}printMap(mp1);cout 交换后 endl;mp1.swap(mp);printMap(mp);printMap(mp1); }int main() {test();return 0; }map插入和删除 函数原型 代码示例 #include iostream #include mapusing namespace std;void printMap(mapint, int mp) {for (mapint, int::iterator it mp.begin(); it ! mp.end(); it) {cout (*it).first (*it).second \t;}cout endl; }void test() {cout mp insert: ;mapint, int mp;pairint, int p1(4, 6);pairint, int p2(2, 1);pairint, int p3(5, 3);pairint, int p4(1, 6);mp.insert(p1);mp.insert(p2);mp.insert(p3);mp.insert(p4);printMap(mp);cout mp删除指定key: ;mp.erase(2);printMap(mp);cout mp删除指定pos: ;mp.erase(mp.begin());printMap(mp);cout mp删除指区间所有元素: ;mp.erase(mp.begin(), mp.end());printMap(mp);cout 清空mp;mp.clear();printMap(mp); }int main() {test();return 0; }map查找和统计 函数原型 代码示例 #include iostream #include mapusing namespace std;void printMap(mapint, int mp) {for (mapint, int::iterator it mp.begin(); it ! mp.end(); it) {cout (*it).first (*it).second \t;}cout endl; }void test() {cout mp insert: ;mapint, int mp;pairint, int p1(4, 6);pairint, int p2(2, 1);pairint, int p3(5, 3);pairint, int p4(1, 6);mp.insert(p1);mp.insert(p2);mp.insert(p3);mp.insert(p4);printMap(mp);mapint, int::iterator pos mp.find(3);if (pos ! mp.end()) {cout 3 find endl;} else {cout 3 not find endl;}cout 查找给定值出现的次数 mp.count(1) endl; }int main() {test();return 0; }map容器排序 主要技术点 利用仿函数可以改变函数规则 代码示例 #include iostream #include mapusing namespace std;class DescCompare { public:// error: no matching function for call to object of type const DescCompare,所以需要使用const修饰bool operator()(int a, int b) const {return a b;} };void test() {cout mp insert: ;mapint, int, DescCompare mp;pairint, int p1(4, 6);pairint, int p2(2, 1);pairint, int p3(5, 3);pairint, int p4(1, 6);mp.insert(p1);mp.insert(p2);mp.insert(p3);mp.insert(p4);for (mapint, int, DescCompare::const_iterator it mp.begin(); it ! mp.end(); it) {cout (*it).first (*it).second \t;}cout endl; }int main() {test();return 0; }
http://www.zqtcl.cn/news/141755/

相关文章:

  • 一个网站做3个关键词够找人建设一个网站多少钱
  • 网站群软件阿里云虚拟主机wordpress
  • 自己做个网站要多少钱温州网站开发平台
  • 北京鑫创网站建设找个网站你知道的
  • 做网站找客户电子商务网站开发与管理
  • 宝安高端网站设计怎么样qq钓鱼网站怎么制作
  • 学习教建网站公众号小程序怎么注销
  • 网站建设或网站优化排名做建筑设计网站
  • 外贸seo外贸推广外贸网站建设外贸网站建设用图片设置网站首页
  • 网站模板安装出入成都通知今天
  • wordpress网站 添加微信网站设计O2O平台佛山总代理
  • 广州网站开发定制方案网站建设应该考虑哪些方面
  • 在线网站建设培训门户类网站图片
  • 佛山乐从网站建设自媒体平台收益排行榜
  • 网站建设项目需求陕西陕煤建设集团有限公司网站
  • 鼓楼网站开发永州做网站tuantaogou
  • ui网站建设站评价文山建设5G网站
  • 深圳 网站设计公司企业网络搭建教程
  • 做网站策划遇到的问题全网营销型网站模版
  • 网站建设费属于无形资产吗广州高铁新建站在哪里
  • 网站建设平台报价深圳市房产交易中心官网
  • 注册网站网前端素材网
  • 快3网站制作 优帮云贾汪区建设局网站
  • 南昌市有帮做网站的吗网站联动
  • 英文网站建设服务合同模板网站详情页艺术字怎么做的
  • discuz仿搜索网站做网站开发用哪种语言好
  • 企业网站服务网络设备维护是做什么的
  • 罗湖网站公司网站服务器建设合同
  • 公司网站设计注意什么免费名字设计成图案
  • python3 网站建设济南网站建设(选 聚搜网络)