set用法

Java中Set接口的用法详解 实现类底层结构顺序性允许null适用场景HashSet哈希表无序是高频访问、无需顺序的去重哈希表+链表维护插入顺序是按插入顺序遍历的去重集合TreeSet红黑树自然/自定义排序否需要排序或范围查询的集合通过合理选择实现类,可高效解决数据唯一性、排序及遍历需求。具体方法示例可参考Oracle官方文档或实际项目代码。 阅读详情

   考试中用set(c++自带的封装起来的红黑树)可以轻松水过平衡树,效率也很高。

    所以要稍稍存一下set具体怎么用了。

    multiset可以有重复的值,而set没有。

include<set>
multiset<int> st;
  st.clear()//清空
  st.insert(10)//插入元素10
  st.erase(10)//删除元素10
  st.begin()//返回第一个元素
  st.end()//返回最后一个
  st.empty()//判空
  st.size()//返回其大小   
   这些是最基础的,而考试中最总要的是如何利用指针it

   创建定位器,具体删除操作

erase(iterator)  ,删除定位器iterator指向的值
erase(first,second),删除定位器first和second之间的值
erase(key_value),删除键值key_value的值

[cpp]  view plain  copy
  1. set<int> s;  
  2. set<int>::const_iterator iter;  
  3. set<int>::iterator first;  
  4. set<int>::iterator second;  
  5. for(int i = 1 ; i <= 10 ; ++i)  
  6.     s.insert(i);  
  7. //第一种删除  
  8. s.erase(s.begin());  
  9. //第二种删除  
  10. first = s.begin();  
  11. second = s.begin();  
  12. second++;  
  13. second++;  
  14. s.erase(first,second);  
  15. //第三种删除  
  16. s.erase(8);  
元素检索
find()若找到,返回该键值迭代器的位置,否则,返回最后一个元素后面一个位置。
[cpp]  view plain  copy
  1. <span style="font-size:18px;">set<int> s;  
  2. set<int>::iterator it;  
  3. it=s.find(5);    //查找键值为5的元素  
  4. if(it!=s.end())    //找到  
  5.     cout<<*it<<endl;  
  6. else            //未找到  
  7.     cout<<"未找到";</span>  
查找前驱和后继
[cpp]  view plain  copy
  1. <span style="font-size:18px;">set<int> s;  
  2. s.insert(1);  
  3. s.insert(3);  
  4. s.insert(4);  
  5. cout<<*s.lower_bound(2)<<endl;  
  6. cout<<*s.lower_bound(3)<<endl;  
  7. cout<<*s.upper_bound(3)<<endl;</span>  

Android Qcom USB Driver学习(五) 在前面的第二期中,我们知道一些非标的USB的充电类型Floatingcharger,其具有和普通DCP相似的大电流能力,但在最初检测的时候会限制Inputcurrentlimit到100mA,来进行检测是否是SDP类型,所以要支持大电流输入就需要进行vote操作,前面的几篇都有涉及,所以本文学习一下pmicusbcharger都相关的vote机制。... 阅读详情

相关推荐

Gamma变换算法之Matlab&FPGA实现

Gamma映射原理 什么是Gamma曲线 人眼的感光与光强并不是呈线性关系的,而是呈非线性关系(指数型关系,如下图左-曲线。在低照度下,人眼更容易分辨出亮度的变化,随着照度的增加,人眼不易分辨出亮度的变化。而图像传感器与输入光强呈线性关系(如下图左-直线)。从图中可见,当传感器感光在20%左右时,人眼感光响应达到了50%,人眼对低照度的变化更为敏感。从下图右侧可见,Reference Tone为人眼感光50%的亮度,而传感器在感光50%时则相对暗的多(见Select,近似中性灰)。这种将原始图像通过映射操

CrazyBingo的博客 7405

opsForValue() 的 set 用法

void set(K var1, V var2, long var3, TimeUnit var5);//opsForValue()中 set 用法 redisTemplate.opsForValue().set(REDIS_KEY_PREFIX_ + key, hotelSubList, 5L, TimeUnit.MINUTES); var1:key var2:value var3:是...

只为成功找方法 不为失败找借口 1万+

链路监控pinpoint3.0.3安装部署(2)

本文详细介绍了Pinpoint 3.0.3分布式链路监控系统的安装部署过程。主要内容包括:1)数据库安装(HBase、MySQL、Redis、Pinot)的详细配置步骤;2)中间件Zookeeper和Kafka的安装;3)Pinpoint三大组件的部署:Collector、Web和Batch的配置文件修改和启动脚本。文章特别强调了使用-starter-exec.jar包的重要性,并提供了各组件所需的详细参数配置,包括数据库连接、Zookeeper地址、Kafka配置等关键信息。

zouzou_888的博客 1375

了解 Redis 并在 Spring Boot 项目中使用 Redis 缓存击穿、缓存穿透

在实际的开发过程中,多多少少都会涉及到缓存,而 Redis 通常来说是我们分布式缓存的最佳选择。Redis 也是我们熟知的 NoSQL(非关系性数据库)之一,虽然其不能完全的替代关系性数据库,但它可作为其良好的补充。本文就和大家一起了解一下 Redis,并实战在 Spring Boot 项目使用它。 Redis 简介 Redis 是一个开源(BSD 许可)、内存存储的数据结构服务器,可用作数据库,高速缓存和消息队列代理。它支持字符串、哈希表、列表、集合、有序集合等数据类型。内置复制、Lua 脚本、LRU

thlzjfefe的博客 402

合成生物学中试:花钱只是开始,烧钱才是常态

2026年合成生物学行业面临严峻产业化挑战:多家企业终止发酵项目或延期投产,显示从实验室到工厂的转化困境。核心问题并非基因合成成本,而是工艺放大难题——67%项目在中试阶段因工艺问题失败。AI辅助无法替代工程经验,菌株-配方-工艺的三元适配需要长期数据积累。中试成本惊人,涉及设备折旧、原料消耗和稀缺工艺人才,而行业普遍回避讨论这些工程现实,导致认知偏差。建议创业者提前布局中试,将其视为核心竞争力而非简单成本项。合成生物学的真正瓶颈在于工程化能力,这需要时间沉淀而非技术叙事。

AIexander的博客 942

【技术解析】LUT-Fuse:如何通过可学习查找表与蒸馏技术,为边缘设备解锁实时图像融合

本文解析了ICCV 2025提出的LUT-Fuse技术,它通过可学习查找表与知识蒸馏,解决了边缘设备上图像融合的质量、速度与功耗“不可能三角”。该方法将复杂计算预编译为高速查找表,在Jetson等设备上实现100+ FPS的实时红外-可见光图像融合,为无人机、安防等应用提供了高效解决方案。

code8的博客 495

RedisTemplate使用最详解(一)--- opsForValue()

RedisTemplate使用最详解(一)--- opsForValue()

qq_37131747的博客 2万+

linux应用程序段错误调试

一、堆、栈 在分析段错误之前,先了解一下什么是堆?什么是栈? 堆:一般由开发者分配释放,如果没有释放,程序结束时,在有的OS中可能会被自动释放,分配方式类似于链表。堆的操作方式为,队列优先,先进先出的原则。 栈:由操作系统自动分配,存放函数的参数值,局部变量。栈的操作方式为,先进后出的原则。 堆栈中定义了一些操作。 两个最重要的是PUSH和POP。  PUSH:操作在堆栈的顶部加入一个元素...

农村种地人 1111

Redis常用api大全(上)

本篇文章会记录一下redis常用api!因为字数超过了限制,所以不得不拆为两部分发出来..... 1、小问题 使用redis的时候发现了一个问题: redisTemplate.opsForValue().set("test", 22);Integer test = (Integer) redisTemplate.opsForValue().get("test");System.out.println(test); 上面代码我增加了一个缓存key:test.

小渣渣的博客 1966

【C++】小猫钓鱼纸牌游戏--C++实现

小猫钓鱼问题: 描述:初始,两个人各有n张牌(牌面0-10),顺序固定,只能按顺序出牌。然后,两个人轮流在桌面上以接龙的方式出牌,当某个人放置的牌在桌面上已经出现时,他收起相同牌面及其中间的牌作为自己的筹码,同时需要再放一张牌到桌面。某人手上的牌出完后,另一个人继续出,直到两人手上都没牌为止,输出结束时两个人手上的筹码数。 #include<iostream> using namespace std; struct queue { int head; //队列首 int tail; //

qq_41344430的博客 3202

如何使用 Conda 安装 Qiskit(详细教程)

本文介绍了使用conda安装Qiskit量子计算工具包的完整流程。首先创建Python 3.10的conda虚拟环境(qiskit_env),然后安装Qiskit核心包及可视化组件(注意Mac用户的安装命令差异)。接着注册IPython内核并测试环境,通过量子电路创建与可视化演示验证安装成功。该教程为量子计算开发提供了简洁的环境配置指南,适合研究者和开发者快速搭建Qiskit开发环境。

猿小白的博客 565

RedisTemplate常用函数解析和使用

RedisTemplate常用函数解析和使用 1.String 操作函数 void set(K var1, V var2); void set(K var1, V var2, long var3, TimeUnit var5); // 是否存在值或者key @Nullable Boolean setIfAbsent(K var1, V var2);...

plumblum的博客 5040

【OpenClaw从入门到精通】第73篇:30天OpenClaw实战挑战——从零搭建个人数字助理(Day15-21)万字超详细高阶实战版

经过前两周的基础部署与功能搭建,你已拥有可自动化干活的AI助理与数字员工团队,但距离“高阶精通”仍有差距。本文聚焦第三周(Day15-21)核心实战,围绕安全审计、语音能力接入、Token成本控制、Agent Loop优化、One-Liner指令五大核心模块,结合真实落地案例与踩坑经验,提供超详细实操指南。通过本文,你将掌握生产级安全加固方案、语音交互全流程配置、低成本高性价比使用策略、Agent自主闭环优化技巧,以及一句话搞定复杂任务的高效指令用法,同时完成中期复盘与最后九天冲刺规划

专注于人工智能、软件开发、工控自动化、工厂数字化及智能化等领域,希望和大家共同进步! 362

set的用法及短语_set的用法和例句

set有放置;设定;确定;规定;调整;分配等意思,那么你知道set的用法吗?下面跟着学习啦小编一起来学习一下,希望对大家的学习有所帮助!set的用法大全:set的用法1:set的基本意思是“放,搁”,指为了明确的目的而将某人或某物放在一个特定的位置或使其处于某种状态。引申可指“使凝固,使变坚固”“确定,制定”“估计,评价”“调整,对准”“使某人〔某物〕开始做某事〔发生作用〕”“树立,创造”“镶嵌,...

weixin_39589644的博客 3781

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

STL之set容器用法

STL之set容器用法 set中每个元素都唯一,就像集合; set中每个元素都是排好序的,因为内部采用红黑树实现; set区别与vector,它不能通过下标访问; 1.0 头文件 #include <set> 1.1 创建set set<int> S; //声明一个int型vector set<int> S(10); //初始大小为10 1.2 ...

luhao19980909的博客 1218

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

set的用法及短语_set的用法和短语例句

set有放置;设定;确定;规定;调整;分配等意思,那么你知道set的用法吗?下面跟着学习啦小编一起来学习一下,希望对大家的学习有所帮助!set的用法大全:set的用法1:set的基本意思是“放,搁”,指为了明确的目的而将某人或某物放在一个特定的位置或使其处于某种状态。引申可指“使凝固,使变坚固”“确定,制定”“估计,评价”“调整,对准”“使某人〔某物〕开始做某事〔发生作用〕”“树立,创造”“镶嵌,...

weixin_39528559的博客 2355

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

Set的用法(c++)

若想让集合按照特定的规则对元素进行排序,可以自定义比较函数。// 降序排列的集合也可以使用函数对象或者 lambda 表达式来自定义比较规则。std::set是 C++ 中用于存储唯一元素的容器,它会自动对元素进行排序。当你需要高效地存储不重复元素,并且希望元素有序时,std::set是一个不错的选择。不过要注意,std::set不支持直接修改元素的值,因为元素的值同时也是键,修改键会破坏集合的有序性。

whycthe的博客 1158

C++中的Set的用法整理

这是一篇针对不了解,不熟悉运用Set的小白用的,可以帮你更好的掌握这方面知识,进阶的话不太适合哦

gaoqiandr的博客 2万+

【C++ 容器 set】set的相关用法

链接set介绍唯一性:std::set中的元素是唯一的,即集合中不允许重复元素。排序:std::set会根据元素的值自动进行排序,默认情况下,它使用元素类型的比较函数来实现排序。内部实现:std::set使用红黑树作为底层数据结构来实现,这使得它的插入、删除和查找操作的时间复杂度都是O(log n)。使用方法: 要使用std::set,首先需要包含头文件。然后,你可以声明一个std::set对象,并使用Insert()方法向其中插入元素。你还可以使用erase()方法来删除元素,使用。

有趣的中国人的博客 964

data()数据关于set的一些用法

<script> //setDate() 来设置当前月的某一天。 (1 ~ 31) var d = new Date() d.setDate(15) console.log(d) //Mon Jul 15 2019 14:38:14 GMT+0800 (中国标准时间) </script> <script> // 返回...

Candy_mi的博客 1240

set和unordered_set的用法

set 就是集合的意思,而集合的特点就是不会出现重复的内容,这也就是 set 容器存储数据的特点,即去重。set中没有重复的元素。set的定义set<存储的类型> mySet;因为Point类型作为set的键的时候,set是不知道如何拿这个类型来进行自动排序的,所以我们必须自定义一个自定义比较对象来告诉这个set(键为Point类型)。int x;int y;if (p1.x!= p2.x) {// 首先比较 x 坐标// 如果 x 坐标相同,则比较 y 坐标// 使用自定义比较函数对象。

cyz322649的博客 735

jstl set用法

http://nerv15.iteye.com/blog/2029559

Hi, Sun 215

c++ hashset的用法_C++中Set主要用法

简介Set封装了C++中的集合,他的主要作用是排序和去重,我们来详细看下:------------------------------------------------------------------------------------------------------------------------------珂爱的分割线-------------------------------...

weixin_39627455的博客 1612

STL用法之set

[C++::STL]之set的用法 c++ set求差集,并集,交集

无论多么困难,也要熬下去!!! 238

A1063 Set Similarity(set基本用法)

题目描述 这题主要是熟悉一下set的特性和用法(insert,size,find) 要注意的一点是printf输出%时要输**%%** #include<cstdio> #include<set> using namespace std; const int N=51; set<int> st[N]; void compare(int x,int y) { ...

弋墨尘的博客 444

Scala—Set集合用法详解

Set

喻师傅的学习笔记 2263
上一篇: 树规+贪心 问题 B: [Poi2014]FarmCraft
下一篇: 暴力DP+离散化 bzoj1592 Making the Grade
QTY_
博客等级 码龄9年 13粉丝 211原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值