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

从零开始的C++(十七)

map/set

功能:能对插入的数据自动排序,遍历时呈现有序。其底层是红黑树,遍历是中序遍历的方式。

set:

特点:

1、set是按照一定次序存储数据的容器。

2、set的元素value,是用于排序比较的元素。且value一旦输入不可修改。

3、set默认是升序排序。

4、set底层是红黑树

5、set对于插入value相同的元素,不会再次插入。即一个set对象中所有元素的值均不同(可以去重)。若希望有重复的值,可以使用multiset。

6、查找一个元素的时间复杂度是Ologn。

set常用函数:

1、插入(insert):返回的是一个pair<iterator,bool>的对象,其中插入成功bool是true,反之是false。iterator插入成功指向新插入的元素,失败说明对象中已经有同值的元素,指向那个元素。

2.删除(erase):返回类型是void,功能是删除输入值对于的元素。

3.查找(find):查找成功返回指向元素的迭代器,失败返回end()。

4.求输入值的元素个数(count):返回同值的元素的个数,一般用于multiset中。

map:

特点:

1.map的元素是一个建对,pair<key,value>

2、map通过key进行插入时的排序,key一旦输入不能修改。

3、不能插入相同key值的元素,哪怕value值不同也不行

4、map支持下标访问,下标是key的值,返回的是对于元素的value。若查找不到下标直接抛异常

5、map的底层是红黑树

相关文章:

  • flask创建步骤
  • 利用 Pandoc + ChatGPT 优雅地润色论文,并保持 Word 公式格式:Pandoc将Word和LaTeX文件互相转化
  • 第八章 应用参数为约束建模 P1|系统建模语言SysML实用指南学习
  • 迭代新品 | 第四代可燃气体监测仪,守护燃气管网安全快人一步
  • qt-C++笔记之treeWidget初次使用
  • Sql Server 2017主从配置之:事务日志传送
  • P3879 [TJOI2010] 阅读理解- 字典树
  • Java方法中不使用的对象应该手动赋值为NULL吗?
  • JS 新操作符 —— “?.”、“??”、“??=”
  • Excel 文件比较工具 xlCompare 11.01 Crack
  • Python编程陷阱(五)
  • 【Java并发编程二】线程的基本知识
  • YOLOv7独家原创改进:最新原创WIoU_NMS改进点,改进有效可以直接当做自己的原创改进点来写,提升网络模型性能精度
  • MSYS2介绍及工具安装
  • SELinux零知识学习十七、SELinux策略语言之类型强制(2)
  • [译]如何构建服务器端web组件,为何要构建?
  • 【RocksDB】TransactionDB源码分析
  • ➹使用webpack配置多页面应用(MPA)
  • ESLint简单操作
  • learning koa2.x
  • SOFAMosn配置模型
  • 阿里中间件开源组件:Sentinel 0.2.0正式发布
  • 成为一名优秀的Developer的书单
  • 服务器从安装到部署全过程(二)
  • 盘点那些不知名却常用的 Git 操作
  • 全栈开发——Linux
  • 使用Maven插件构建SpringBoot项目,生成Docker镜像push到DockerHub上
  • 使用前端开发工具包WijmoJS - 创建自定义DropDownTree控件(包含源代码)
  • 原生 js 实现移动端 Touch 滑动反弹
  • #NOIP 2014# day.2 T2 寻找道路
  • #控制台大学课堂点名问题_课堂随机点名
  • (11)MSP430F5529 定时器B
  • (附源码)spring boot网络空间安全实验教学示范中心网站 毕业设计 111454
  • (附源码)springboot美食分享系统 毕业设计 612231
  • (附源码)ssm跨平台教学系统 毕业设计 280843
  • (转载)VS2010/MFC编程入门之三十四(菜单:VS2010菜单资源详解)
  • ..回顾17,展望18
  • .Mobi域名介绍
  • .NET CF命令行调试器MDbg入门(三) 进程控制
  • .NET MVC 验证码
  • .net MySql
  • .Net Remoting(分离服务程序实现) - Part.3
  • .net web项目 调用webService
  • .net 受管制代码
  • .NET 应用架构指导 V2 学习笔记(一) 软件架构的关键原则
  • .net获取当前url各种属性(文件名、参数、域名 等)的方法
  • .net开源工作流引擎ccflow表单数据返回值Pop分组模式和表格模式对比
  • .net使用excel的cells对象没有value方法——学习.net的Excel工作表问题
  • @AliasFor注解
  • @GlobalLock注解作用与原理解析
  • [ vulhub漏洞复现篇 ] AppWeb认证绕过漏洞(CVE-2018-8715)
  • [ 云计算 | AWS 实践 ] Java 如何重命名 Amazon S3 中的文件和文件夹
  • [\u4e00-\u9fa5] //匹配中文字符
  • [2019.2.28]BZOJ4033 [HAOI2015]树上染色
  • [Android 13]Input系列--获取触摸窗口