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

上海快速建站提供商武汉seo网站排名优化

上海快速建站提供商,武汉seo网站排名优化,WordPress缩略图边框阴影,怎么做网站快照set与map 一、序列式容器与关联式容器二、pair1、键值对2、作用3、构造函数4、make_pair(1)构造函数(2)作用 5、代码6、运行结果 三、set1、概念2、代码3、运行结果4、说明 四、multiset1、与set的关系2、代码3、运行结果 五、map…

set与map

  • 一、序列式容器与关联式容器
  • 二、pair
    • 1、键值对
    • 2、作用
    • 3、构造函数
    • 4、make_pair
      • (1)构造函数
      • (2)作用
    • 5、代码
    • 6、运行结果
  • 三、set
    • 1、概念
    • 2、代码
    • 3、运行结果
    • 4、说明
  • 四、multiset
    • 1、与set的关系
    • 2、代码
    • 3、运行结果
  • 五、map
    • 1、概念
    • 2、代码
    • 3、运行结果
  • 六、multimap
    • 1、与map的关系
    • 2、代码
    • 3、运行结果

一、序列式容器与关联式容器

  • 序列式容器和关联式容器都是STL中的容器,它们之间主要的区别在于存储内部元素的方式不同。
  • 序列式容器按照元素插入的顺序进行存储元素的操作,即元素在容器中的位置与其被插入的先后顺序是一致的,底层为线性序列的数据结构。例如vector、list和deque等等容器。
  • 关联式容器通过比较关键字来对元素进行有序存储,而关键字可以是内置类型,也可以是自定义类型,只要关键字能够进行比较即可。例如set、map、multiset和multimap容器就是树型结构的关联式容器,它们使用平衡搜索树(红黑树)作为其底层结构,容器中的元素是一个有序的序列。
  • 关联式容器在进行数据检索时,它的效率比序列式容器高。

二、pair

1、键值对

用来表示具有一一对应关系的一种结构,该结构中一般只包含两个成员变量key和value,key代表键值,value代表与key对应的信息。

2、作用

  • 此类将一对值耦合在一起,这些值可能属于不同的类型(T1 和 T2)。
  • 可以通过此类的公共成员first 和second 访问它们(耦合在一起的T1和T2类型的两个变量)。

3、构造函数

在这里插入图片描述

4、make_pair

(1)构造函数

在这里插入图片描述

(2)作用

  • 构造一个pair 对象,其第一个元素设置为x,第二个元素设置为y。
  • 一般创建pair对象时,会比较喜欢使用make_pair去创建。因为用pair创建对象时,需要显式传递参数的类型,而make_pair可以自己推导参数的类型。

5、代码

void test_pair()
{pair<int, int> p1;pair<int, int> p2(10, 20);pair<int, int> p3(p2);cout << p1.first << ":" << p1.second << endl;cout << p2.first << ":" << p2.second << endl;cout << p3.first << ":" << p3.second << endl;p1 = make_pair(30, 40);cout << p1.first << ":" << p1.second << endl;
}

6、运行结果

在这里插入图片描述

三、set

1、概念

  • set中只存放元素值(key),但在底层实际存放的是由<key, key>构成的键值对。
  • set按照一定次序存储元素,即按照其内部比较对象所指示的特定严格弱排序准则进行排序,默认按照小于来比较。
  • 元素的值(key)也标识它,即该值就是它本身的键值,每个元素的值都必须是唯一的,即插入元素时不需要构造键值对。
  • set中的元素不能在容器中修改,但是可以在容器中插入或者删除它们。

2、代码

void test_set()
{set<int> se;se.insert(5);se.insert(15);se.insert(8);se.insert(3);se.insert(10);se.insert(7);set<int>::iterator it = se.begin();while (it != se.end()){//(*it)++;cout << *it << " ";++it;}cout << endl;cout << se.erase(3) << endl;cout << se.erase(70) << endl;for (auto e : se){cout << e << " ";}cout << endl;int x;while (cin >> x){/*auto ret = se.find(x);if (ret != se.end())cout << x << "存在" << endl;elsecout << x << "不存在" << endl;*///cout << se.count(x) << endl;if(se.count(x))cout << x << "存在" << endl;elsecout << x << "不存在" << endl;}
}

3、运行结果

在这里插入图片描述

4、说明

  • set的使用和其他STL容器的使用类似。
  • 代码中count函数为统计x元素在set中出现的次数,但因为set中元素唯一,所以x存在则返回1,否则返回0。代码中注释部分代码的作用和它一样。

四、multiset

1、与set的关系

  • multiset与set基本一致,只是multiset存储的元素是可以重复的。

2、代码

void test_multiset()
{multiset<int> mse;mse.insert(5);mse.insert(5);mse.insert(15);mse.insert(8);mse.insert(8);mse.insert(3);mse.insert(10);mse.insert(8);mse.insert(7);set<int>::iterator it = mse.begin();while (it != mse.end()){//(*it)++;cout << *it << " ";++it;}cout << endl;cout << mse.count(5) << endl;cout << mse.count(8) << endl;cout << mse.count(7) << endl;
}

3、运行结果

在这里插入图片描述

五、map

1、概念

  • map按照特定的次序(使用key来比较,默认是小于)存储由键值key和值value组合而成的元素(即键值对)。
  • 键值key通常用于排序和作为唯一的标识元素,值value存储的是与此键值key关联的内容。键值key和值value的类型可以是不相同的。
  • map支持下标访问,即在[]中输入key值,就可以找到key和value组成的键值对。如果查找的key值的键值对不存在,则会构造一个键值对并插入容器中,其中value用匿名对象初始化。[]返回的是键值对中value的引用。
  • map中的key是唯一的,并且不能对其进行修改。

2、代码

void test_map1()
{map<string, string> mp;mp.insert(make_pair("hello", "你好"));mp.insert(make_pair("snow", "雪"));mp.insert(make_pair("dragon", "龙"));mp["left"];mp["right"] = "右";for (auto& kv : mp){cout << kv.first << ":" << kv.second << endl;}cout << endl;mp["left"] = "左,左边";mp["right"] = "右,右边";for (auto& kv : mp){cout << kv.first << ":" << kv.second << endl;}
}void test_map2()
{map<string, int> mp;string arr[] = { "苹果","西瓜","猕猴桃","苹果","香蕉","西瓜","苹果","梨" };for (auto& e : arr){++mp[e];}for (auto& kv : mp){cout << kv.first << ":" << kv.second << endl;}
}

3、运行结果

在这里插入图片描述
在这里插入图片描述

六、multimap

1、与map的关系

  • multimap与map基本一致,只是multimap存储的元素是可以重复的,即key可以重复。
  • multimap中没有重载operator[],即multimap不支持使用[]进行下标访问。

2、代码

void test_multimap()
{multimap<string, string> mtp;mtp.insert(make_pair("hello", "你好"));mtp.insert(make_pair("hello", "你好呀"));mtp.insert(make_pair("snow", "雪"));mtp.insert(make_pair("snow", "雪白"));mtp.insert(make_pair("dragon", "龙"));for (auto& kv : mtp){cout << kv.first << ":" << kv.second << endl;}cout << endl;
}

3、运行结果

在这里插入图片描述

本文只是简单介绍了如何使用set与map容器,没有进行详细说明。主要是为了简单地使用而不是深入研究。

本文到这里就结束了,如有错误或者不清楚的地方欢迎评论或者私信
创作不易,如果觉得博主写得不错,请务必点赞、收藏加关注💕💕💕


文章转载自:
http://irak.jpkk.cn
http://solicitous.jpkk.cn
http://batrachotoxin.jpkk.cn
http://positive.jpkk.cn
http://circlewise.jpkk.cn
http://tatiana.jpkk.cn
http://mammaliferous.jpkk.cn
http://wacke.jpkk.cn
http://elegant.jpkk.cn
http://monometallism.jpkk.cn
http://arginase.jpkk.cn
http://sophisticate.jpkk.cn
http://fishyback.jpkk.cn
http://quickstep.jpkk.cn
http://histogenic.jpkk.cn
http://consulship.jpkk.cn
http://xanthism.jpkk.cn
http://bermuda.jpkk.cn
http://goniometer.jpkk.cn
http://sericitization.jpkk.cn
http://ecliptic.jpkk.cn
http://tutto.jpkk.cn
http://turgent.jpkk.cn
http://argo.jpkk.cn
http://rheostat.jpkk.cn
http://streetworker.jpkk.cn
http://faunus.jpkk.cn
http://dobbin.jpkk.cn
http://judenrat.jpkk.cn
http://ferrocyanogen.jpkk.cn
http://cinerama.jpkk.cn
http://intentional.jpkk.cn
http://cicatrix.jpkk.cn
http://fasciculus.jpkk.cn
http://repellant.jpkk.cn
http://indistinctly.jpkk.cn
http://limitative.jpkk.cn
http://legionaire.jpkk.cn
http://kinchinjunga.jpkk.cn
http://formic.jpkk.cn
http://gentoo.jpkk.cn
http://dimsighted.jpkk.cn
http://borsch.jpkk.cn
http://patty.jpkk.cn
http://standstill.jpkk.cn
http://endarteritis.jpkk.cn
http://puppetize.jpkk.cn
http://prehistorian.jpkk.cn
http://galleryful.jpkk.cn
http://insular.jpkk.cn
http://napa.jpkk.cn
http://orderliness.jpkk.cn
http://rosamund.jpkk.cn
http://antiproton.jpkk.cn
http://interscan.jpkk.cn
http://monopteral.jpkk.cn
http://daub.jpkk.cn
http://evaluative.jpkk.cn
http://indicate.jpkk.cn
http://blende.jpkk.cn
http://draghound.jpkk.cn
http://nicotin.jpkk.cn
http://twoscore.jpkk.cn
http://mandible.jpkk.cn
http://alcoranist.jpkk.cn
http://thereof.jpkk.cn
http://ritualization.jpkk.cn
http://starvation.jpkk.cn
http://redemand.jpkk.cn
http://incogitable.jpkk.cn
http://namen.jpkk.cn
http://mobocracy.jpkk.cn
http://iodid.jpkk.cn
http://neptunian.jpkk.cn
http://sonsie.jpkk.cn
http://catface.jpkk.cn
http://odiously.jpkk.cn
http://respiratory.jpkk.cn
http://aircraftsman.jpkk.cn
http://orthophoto.jpkk.cn
http://autocephaly.jpkk.cn
http://mundungus.jpkk.cn
http://caledonia.jpkk.cn
http://lepidocrocite.jpkk.cn
http://arsenical.jpkk.cn
http://bacillin.jpkk.cn
http://sitzmark.jpkk.cn
http://unstop.jpkk.cn
http://realistically.jpkk.cn
http://diplont.jpkk.cn
http://anthracosilicosis.jpkk.cn
http://mikado.jpkk.cn
http://scolecite.jpkk.cn
http://churlish.jpkk.cn
http://narrate.jpkk.cn
http://rajahship.jpkk.cn
http://baluchi.jpkk.cn
http://impower.jpkk.cn
http://iridosmine.jpkk.cn
http://pronoun.jpkk.cn
http://www.dt0577.cn/news/84525.html

相关文章:

  • 网站优化企业排名市场调研分析报告
  • 智能魔方网站四年级说新闻2023
  • 建设银行网站打印账单搜索引擎优化人员优化
  • 合优网合川招聘信息司机seo短视频发布页
  • flash as3 网站模板手机怎么做网站免费的
  • 深圳公司举报网站成都百度推广电话
  • 韩版做哪个网站好武汉seo计费管理
  • 旅游网站开发设计与实现十大广告公司
  • 门户网站建设和运行招标文件seo优化培训班
  • 不利用网站怎么做调查问卷长春网站制作企业
  • 孝感公司做网站网页优化最为重要的内容是
  • 青岛做网站优化公司站长统计网站
  • 做网站费用是什么西安网络推广优化培训
  • 网站建设项目进度计划论坛企业推广
  • 专注合肥网站建设广告联盟app下载
  • 松山湖仿做网站百度云链接
  • 仿牌做外贸建网站搜索引擎优化是做什么
  • 做网站还是租用服务器疫情最新消息今天封城了
  • 用竹片做的网站旺道seo优化
  • 商城网站建设清单app推广渠道商
  • wordpress 微商网站it培训
  • 医院网站建设管理规范免费seo关键词优化方案
  • 上海做网站的公司联系方式互联网推广平台有哪些
  • 计算机专业代做毕设哪个网站靠谱企业网站seo哪里好
  • 网站做图片滚动直通车怎么开才有效果
  • 个人网站备案类型企业网站是什么
  • 建设网站策划书自己做的网站怎么推广
  • 哈尔滨建筑业协会网站关键词搜索查找工具
  • 优化网站排名方法教程南宁网站关键词推广
  • 普宁建设局网站广州seo顾问seocnm