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

企业网站色彩沛县专业做网站

企业网站色彩,沛县专业做网站,付费设计网站,鞍山信息港家讯房产map和set 文章目录 map和set关联式容器setset介绍set的函数测试代码 multiset注意事项测试代码 mapmap介绍map的函数测试代码 关联式容器 前面了解过的vector#xff0c;list#xff0c;string等容器都是序列式容器#xff0c;存储的都是元素本身#xff0c;底层都是线性的…map和set 文章目录 map和set关联式容器setset介绍set的函数测试代码 multiset注意事项测试代码 mapmap介绍map的函数测试代码 关联式容器 前面了解过的vectorliststring等容器都是序列式容器存储的都是元素本身底层都是线性的数据结构。 而map和set存储的都是key,value 的键值对在进行数据检索时效率更高 STL中对键值对的定义 template class T1, class T2 struct pair { typedef T1 first_type; typedef T2 second_type; T1 first; T2 second; pair(): first(T1()), second(T2()) {} pair(const T1 a, const T2 b): first(a), second(b) {} };set 文档https://legacy.cplusplus.com/reference/set/set/?kwset set介绍 查找set的底层是红黑树存储键值对中序遍历结果是有序的默认从小到大排序查找的时间复杂度是 l o g 2 n log_2n log2​n去重除了排序set还有去重的功能。底层1set存储的实际上是**value,value结构**map才是真正的key,value底层2**set的key值不能修改因为迭代器底层都是const迭代器。**但是可以插入和删除。 set的函数测试代码 void test_set1() {// 排序去重setint s;s.insert(3);s.insert(3); s.insert(3);s.insert(5);s.insert(8);s.insert(7);for (auto e : s){cout e ;}cout endl;//3 5 7 8if (s.find(5) ! s.end()){cout 找到了 endl;}if (s.count(5)){cout 找到了 endl;}std::setint myset;std::setint::iterator itlow, itup;for (int i 1; i 10; i)myset.insert(i * 10); // 10 20 30 40 50 60 70 80 90myset.insert(35);// 删除[30 60]//itlow myset.lower_bound(30); // //itup myset.upper_bound(60); // //std::pairstd::setint::const_iterator, std::setint::const_iterator ret;auto ret myset.equal_range(30);//ret的类型是pairitlow ret.first;itup ret.second;// [itlow, itup)cout *itlow endl;cout *itup endl;myset.erase(itlow, itup); for (auto e : myset){cout e ;}cout endl; // 10 20 70 80 90 }multiset 注意事项 允许有重复的元素find函数查找的值有多个返回的是多个值的第一个位置树的结构决定方便后续插入删除 测试代码 void test_set2() {// 排序multisetint s;s.insert(3);s.insert(5);s.insert(8);s.insert(7);s.insert(7);s.insert(9);s.insert(7);for (auto e : s){cout e ;//3 5 7 7 7 8 9}cout endl;// 返回中序第一个7auto pos s.find(7);while (pos ! s.end()){cout *pos ; //7 7 7 8 9pos;}cout endl;cout s.count(7) endl; //3 }map map介绍 和set的相同点 map中的key是唯一的并且不能修改 默认按照小于的方式对key进行比较 map中的元素如果用迭代器去遍历可以得到一个有序的序列 map的底层为平衡搜索树(红黑树)查找效率比较高 O ( l o g 2 N ) O(log_2 N) O(log2​N) 不同点 map中的的元素是键值对真正的可以通过key修改value的值底层迭代器并不都是const迭代器 map的函数测试代码 C11支持多参数的构造函数隐式类型的转换但是C98没有 // 隐式类型的转换 class A { public:A(int a1, int a2):_a1(a1), _a2(a2){} private:int _a1;int _a2; };string str1 hello;A aa1 { 1, 2 }; pairstring, string kv2 { string, 字符串 };insert() 多种形式 void test_map1() {mapstring, string dict;pairstring, string kv1(insert, 插入);dict.insert(kv1);dict.insert(pairstring, string(sort, 排序));// C98dict.insert(make_pair(string, 字符串));// C11 多参数的构造函数隐式类型转换dict.insert({ string, 字符串 });// 隐式类型的转换string str1 hello;A aa1 { 1, 2 };pairstring, string kv2 { string, 字符串 }; }] 插入时若map中已经有key不对value进行覆盖 void test_map2() {mapstring, string dict;dict.insert(make_pair(string, 字符串));dict.insert(make_pair(sort, 排序));dict.insert(make_pair(insert, 插入));// 不插入不覆盖插入过程中只比较keyvalue是相同无所谓// key已经有了就不插入了dict.insert(make_pair(insert, xxxx));auto it dict.begin();while (it ! dict.end()){//cout (*it).first : (*it).second endl;cout it-first : it-second endl;it;}cout endl;for (const auto kv : dict){cout kv.first : kv.second endl;} }operator[]若map中没有该元素则会先进行插入 void test_map4() {mapstring, string dict;dict.insert(make_pair(string, 字符串));dict.insert(make_pair(sort, 排序));dict.insert(make_pair(insert, 插入));cout dict[sort] endl; // 查找和读dict[map]; // 插入dict[map] 映射,地图; // 修改dict[insert] xxx; // 修改dict[set] 集合; // 插入修改 }
http://www.hkea.cn/news/14281019/

相关文章:

  • 网站建设的实验原理和方法怎么做一个网站出来
  • 网站推广软文常用的网络推广平台有哪些呢
  • 怎样做一个网站冠县网站建设多少钱
  • 聊城制作网站免费制作网站平台有哪些
  • 建设高校图书馆网站的意义网站开发公司如何运营
  • 网站开发 密码wordpress左侧插件
  • 全国设计网站公司网站个安装wordpress
  • 上海做网站多少钱网站建设课程报告
  • 宁波seo网站服务安装app
  • 如何做网站的充值功能医疗网站开发ppt
  • 开一个素材设计网站怎么做网站数据分析平台
  • 网站首页没有权重python 爬虫 做网站
  • 网站查询seo个人接做网站多少钱
  • 做静态网站的软件网站开发有哪些方向
  • 淘宝接单做网站访问一个网站的全过程
  • 网站刷链接怎么做的网站面包屑导航代码
  • 做推广任务网站陕西金顶建设公司网站
  • 网站开发行情齐鲁人才网
  • 乐昌北京网站建设电子商务网站开发主要有哪些
  • 网站建设合作流程图淘宝上那些做网站seo的管用吗
  • 简单做动画的网站综合电子商务型企业网站
  • 优秀网站建设哪家便宜申请自助建站
  • 优化网站软文上海长宁建设和交通门户网站
  • 做公司的网站的需求有哪些好的网站设计网站
  • 宁夏电力建设工程公司外部网站壹佰网站建设
  • wordpress网站属于什么网站吗asp做微网站
  • 建设电子商务平台网站国内顶尖的公司
  • firework做网站教程网站建设公司专业网站开发需求
  • 最权威的网站推广设计wordpress调样式
  • 网站开发制作费入会计科目怎么开网店不需要自己上货