首页 > 其他分享 >关于set容器

关于set容器

时间:2024-04-24 11:00:13浏览次数:28  
标签:返回 容器 set 删除 迭代 元素 关于

简介

集合(set) 用以有序地存储 互异 元素的容器。

其实现是由节点组成的红黑树,每个节点都包含着一个元素,节点之间以某种比较元素大小的谓词进行排列。

头文件

#include <set>

常用操作

声明

set<数据类型> 变量名

操作

插入与删除

  • insert(x) 当容器中没有等价元素的时候,将元素 \(x\) 插入到 \(set\) 中。
  • erase(x) 删除值为 \(x\) 的 所有 元素,返回删除元素的个数。
  • erase(pos) 删除迭代器为 \(pos\) 的元素,要求迭代器必须合法。
  • erase(first,last) 删除迭代器在 \([first,last)\) 范围内的所有元素。
  • clear() 清空 \(set\)。

迭代器

俺不会

查找

  • count(x) 返回 \(set\) 内键为 \(x\) 的元素数量。
  • find(x) 在 \(set\) 内存在键为 \(x\) 的元素时会返回该元素的迭代器,否则返回 \(end()\)。
  • lower_bound(x) 返回指向首个不小于给定键的元素的迭代器。如果不存在这样的元素,返回 \(end()\)。
  • upper_bound(x) 返回指向首个大于给定键的元素的迭代器。如果不存在这样的元素,返回 \(end()\)。
  • empty() 返回容器是否为空。
  • size() 返回容器内元素个数。

使用样例

洛谷P3667

标签:返回,容器,set,删除,迭代,元素,关于
From: https://www.cnblogs.com/Elaina-0/p/18154569

相关文章

  • 关于我
    不要看我绿名,我的表现分可是上过1800的至于为什么是绿名因为作了太多死了由于小盆友睡眠问题不能打CF坐标JX,初一。水平在同省同年龄还行。爱好听纯音,但Cloudmusic账号还是8级最喜欢流了,因为流裸题都是紫。这里主要是题解,将来可能还会有闲话。......
  • MPV PLAYER video settings 视频设置
    ###################videosettings####################Startinfullscreenmodebydefault.#fs=yes#forcestartingwithcenteredwindow#geometry=50%:50%#don'tallowanewwindowtohaveasizelargerthan90%ofthescreensize#autofit-larger=90......
  • springboot源码:容器启动过程(扩展业务对象、bean 生命周期)&动态注册自己的业务对象&
    0.SpringbootRun方法启动org.springframework.boot.SpringApplication#run(java.lang.String...)启动 publicConfigurableApplicationContextrun(String...args){ longstartTime=System.nanoTime(); DefaultBootstrapContextbootstrapContext=createBootstrap......
  • 关于博客
    费曼学习法说,将学习表述给他人效率最高。然伯牙子期难觅,与同门、导师交流,总希望将内容一遍又一遍打磨,而不过多占用他人时间。可我是个急性子,取得小小进展的喜悦多么想表达出来。博客就是我的小小栖息地。大三上沉迷折腾博客,偶然瞥见数字花园的概念。博客于我就是大花园,我是园丁......
  • docker 镜像和容器的基本命令
    1.基本镜像命令(1)搜索镜像仓库dockersearchmysqldockersearchmysql:5.7(2)拉取镜像dockerpullmysql dockerpullmysql:5.7(3)查看镜像 dockerimages dockerimage(4)删除镜像dockerrmi镜像ID dockerrmi-f镜像ID(强制删除) 2.基本容......
  • Mysql 密码报错 You must reset your password ... 和 Your password does N
    如果MySQL数据库用户的密码设置过于简单,数据库在用户登录后会提示重置密码,并且不接受简单的密码。提示需要重置密码:ERROR1820(HY000):YoumustresetyourpasswordusingALTERUSERstatementbeforeexecutingthisstatement.Mysql数据库版本:5.7.1操作系统:CentOS7这......
  • 关于Android Studio双击exe没有反应解决办法
    首先说原因,我的因为之前卸载了,然后重新下载后一直打不开,查看了很多博客找不到解决办法,最终在AndroidStudio双击exe没有反应解决办法_androidstudio双击没反应-CSDN博客这个博客中得到了启发 先说解决办法第一步,到AndroidStudio的bin目录下,查看studio.bat文件查看的话......
  • docker容器不显示中文
    打算搬迁自己的笔记到组里的服务器上,又因为是服务器,对环境限制比较多,不会随便安装一些包和lib库,所以大家基本上都是docker开自己的容器用。然后:终端无法显示中文,实际上zsh的命令补全还是能显示中文的,但是终端就是不行按照找到的教程,locale和locale-a查看本地正在使用以及支......
  • 解决idea关于Maven的各种疑难杂症
    maven的问题总是时不时的会遇到,每次花费很长时间去解决这个所谓的环境问题。就很哪个..有时候突然就好了,令人措手不及!首先我们配置maven的conf下的setting.xml目录简简单单就好啦镜像直接阿里云<?xmlversion="1.0"encoding="UTF-8"?><settingsxmlns="http://maven.apac......
  • HINT: It seems you set a fixed date / time / datetime value as default for this
    WARNINGS:customers.PackingHead.packing_date:(fields.W161)Fixeddefaultvalueprovided.HINT:Itseemsyousetafixeddate/time/datetimevalueasdefaultforthisfield.Thismaynotbewhatyouwant.Ifyouwanttohavethecurrentdateasdefault......