【数据结构之集合】

本文介绍了集合这一数据结构的基本特点:确定性、互异性与无序性,并详细讲解了如何创建集合、检查不重复性、添加和删除元素以及各种集合运算,如子集判断、差运算、并集、交集等。通过实例说明了集合在业务场景中的应用,特别是在数据筛选和分类中的作用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

集合:集合是指具有某种特定性质的具体的或抽象的对象汇总而成的集体。其中,构成集合的这些对象则称为该集合的元素

集合的特点:
1、确定性:
给定一个集合,任给一个元素,该元素或者属于或者不属于该集合,二者必居其一,不允许有模棱两可的情况出现
2、互异性:
一个集合中,任何两个元素都认为是不相同的,即每个元素只能出现一次。有时需要对同一元素出现多次的情形进行刻画,可以使用多重集,其中的元素允许出现多次 。
3、无序性:
一个集合中,每个元素的地位都是相同的,元素之间是无序的。集合上可以定义序关系,定义了序关系后,元素之间就可以按照序关系排序。但就集合本身的特性而言,元素之间没有必然的序(该概念取自于百度百科)


1、集合的创建

###集合的创建
set1={1,2,3,4,5,6}
set1
output
{1, 2, 3, 4, 5, 6}

2、集合不重复性检验

## 集合的不重复性
set2={7,8,9,10,11,6,6,6,6}
set2
output
{6, 7, 8, 9, 10, 11}

3、集合中元素的添加

set2=set2.union({13,14})
set2
output
{6,7, 8, 9, 10, 11, 13, 14}

4、集合中元素的删除

## 集合元素的移除
set2.remove(6)
set2
output
{7, 8, 9, 10, 11, 13, 14}

5、集合运算
5.1子集的判断

## 判断{13,14}是否为集合2的子集

({13,14}).issubset(set2)
output
True

5.2集合的差运算

## 集合的差运算
print(set2-set1)
print(set2.difference(set1))
output
{7, 8, 9, 10, 11, 13, 14}
{7, 8, 9, 10, 11, 13, 14}

5.3集合的并

## 集合的并运算
print(set2|set1)
print(set2.union(set1))
output
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14}
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14}

5.4集合的交

## 集合的交运算
print(set2&set1)
print(set2.intersection(set1))
output
set()
set()

结果说明:输出的集合是空集,集合和集合之间没有交集。

5.5集合的并减交集

## 集合并集减交集
print(set2^set1)
print(set2.symmetric_difference(set1))
output
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14}
{1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 14}

集合是所有数据结构自带去重属性的数据结构,在实际的业务场景中,一般通过集合之间的交并补差来分析集合之间的相互关系,从而达到筛选、分类的目标。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值