List 与 Set 的区别?

本文介绍了List、Set、Map集合接口及其实现类。List和Set实现了Collection接口,Map是独立接口。还阐述了各接口实现类的特点,如ArrayList查询快、LinkedList插入快等,最后对比了List和Map存储数据的差异。

List 是可重复集合,Set 是不可重复集合,这两个接口都实现了 Collection 父接口。

Map 未继承 Collection,而是独立的接口,Map 是一种把键对象和值对象进行映射的集合,它的每一个元素都包含了一对键对象和值对象,Map 中存储的数据是没有顺序的, 其 key 是不能重复的,它的值是可以有重复的。

List 的实现类有 ArrayList,Vector 和 LinkedList

ArrayList 和 Vector 内部是线性动态数组结构,在查询效率上会高很多,Vector 是线程安全的,相比 ArrayList 线程不安全的,性能会稍慢一些。

LinkedList:是双向链表的数据结构存储数据,在做查询时会按照序号索引数据进行前向或后向遍历,查询效率偏低,但插入数据时只需要记录本项的前后项即可,所以插入速度较快。

Set 的实现类有 HashSet 和 TreeSet

HashSet:内部是由哈希表(实际上是一个 HashMap 实例)支持的。它不保证 set 元素的迭代顺序。

TreeSet:TreeSet 使用元素的自然顺序对元素进行排序,或者根据创建 set 时提供的 Comparator 进行排序。

Map 接口有三个实现类:Hashtable,HashMap,TreeMap,LinkedHashMap

Hashtable:内部存储的键值对是无序的是按照哈希算法进行排序,与 HashMap 最大的区别就是线程安全。键或者值不能为 null,为 null 就会抛出空指针异常。

TreeMap:基于红黑树 (red-black tree) 数据结构实现,按 key 排序,默认的排序方式是升序。

LinkedHashMap:有序的 Map 集合实现类,相当于一个栈,先 put 进去的最后出来,先进后出。

 

List 和 Map 区别?

一个是存储单列数据的集合,另一个是存储键和值这样的双列数据的集合,List 中存储的数据是有顺序,并且允许重复;Map 中存储的数据是没有顺序的,其 key 是不能重复的,它的值是可以有重复的

数据集介绍:文档印章目标检测数据集一、基础信息数据集名称:文档印章目标检测数据集 图片数量: - 训练集:2,323张图片 分类类别: - 印章(SRC):包含各类文档中出现的签名印章、公章等关键标识,适用于文件真实性核验场景。标注格式: YOLO格式,包含边界框单类别标签,支持主流目标检测框架直接训练。数据特性: 覆盖多种印章尺寸位置分布,包含文档局部特写及多角度拍摄样本,适用于复杂背景下的印章定位需求。二、适用场景政务/金融文档自动化处理: 支持合同、证明文件等材料的自动印章检测,提升文件审核效率合规性校验能力。档案数字化管理系统: 集成至电子档案管理系统,实现历史文档印章信息的快速提取归档。学术研究领域: 为印章识别算法研究提供基准数据集,支持目标检测模型的创新优化。防伪鉴别应用开发: 通过印章定位辅助鉴别文件真伪,适用于知识产权保护、法律文书核查等场景。三、数据集优势场景针对性强: 专注文档场景下的印章检测任务,样本涵盖不同光照条件、印章形态及文档类型。标注质量优异: 所有边界框经双重质检,确保印章区域定位精准,边缘贴合度达像素级精度。工程适配度高: 原生YOLO格式支持即插即用,可快速接入YOLOv5/v7/v8等主流检测框架训练流程。数据扩展性强: 提供统一标注规范,支持用户根据业务需求扩展其他文档要素标注(如签名、日期等)。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值