尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

集合常见操作示例

集合常见操作示例
📅 发布时间:2026/6/19 20:54:33

集合(Set)是数学和编程中常用的数据结构,用于存储唯一元素(无重复值)。以下是集合的常见操作及其示例,涵盖数学集合和编程实现(以Python为例):


1. 创建集合

  • 数学表示:A = {1, 2, 3}
  • Python示例:
    A = {1, 2, 3}          # 直接创建集合
    B = set([2, 3, 4])     # 从列表转换为集合(自动去重)
    C = set()              # 空集合
    

2. 基本操作

(1) 添加元素

  • 数学:向集合中加入新元素。
  • Python:
    A.add(4)      # A = {1, 2, 3, 4}
    

(2) 删除元素

  • 数学:从集合中移除元素。
  • Python:
    A.remove(2)   # 若元素不存在会报错
    A.discard(5)  # 若元素不存在不会报错
    A.pop()       # 随机移除一个元素(返回被移除的值)
    A.clear()     # 清空集合
    

(3) 检查元素是否存在

  • 数学:判断元素是否属于集合。
  • Python:
    print(3 in A)  # 输出 True 或 False
    

3. 集合运算

(1) 并集(Union)

  • 数学:A ∪ B = {x | x ∈ A 或 x ∈ B}
  • Python:
    A = {1, 2, 3}
    B = {3, 4, 5}
    print(A | B)  # 输出 {1, 2, 3, 4, 5}
    

(2) 交集(Intersection)

  • 数学:A ∩ B = {x | x ∈ A 且 x ∈ B}
  • Python:
    print(A & B)  # 输出 {3}
    

(3) 差集(Difference)

  • 数学:A - B = {x | x ∈ A 且 x ∉ B}
  • Python:
    print(A - B)  # 输出 {1, 2}
    

(4) 对称差集(Symmetric Difference)

  • 数学:A Δ B = (A - B) ∪ (B - A)
  • Python:
    print(A ^ B)  # 输出 {1, 2, 4, 5}
    

(5) 子集与超集

  • 数学:A ⊆ B(A是B的子集),A ⊇ B(A是B的超集)。
  • Python:
    C = {1, 2}
    print(C.issubset(A))  # True(C是A的子集)
    print(A.issuperset(C)) # True(A是C的超集)
    

4. 其他操作

(1) 集合长度

  • 数学:集合中元素的数量。
  • Python:
    print(len(A))  # 输出 3
    

(2) 遍历集合

  • Python:
    for x in A:print(x)
    

(3) 集合推导式

  • Python:
    squares = {x**2 for x in range(5)}  # 输出 {0, 1, 4, 9, 16}
    

5. 不可变集合(Frozenset)

  • 特点:集合的不可变版本,可哈希,可作为字典的键。
  • Python:
    frozen_A = frozenset([1, 2, 3])
    

示例总结

# 创建集合
A = {1, 2, 3}
B = {3, 4, 5}# 并集
print(A | B)  # {1, 2, 3, 4, 5}# 交集
print(A & B)  # {3}# 差集
print(A - B)  # {1, 2}# 对称差集
print(A ^ B)  # {1, 2, 4, 5}# 子集检查
C = {1, 2}
print(C <= A)  # True(C是A的子集)

应用场景

  • 去重(如列表去重)。
  • 快速查找(成员检测时间复杂度为O(1))。
  • 关系运算(如用户权限的并集、交集等)。

通过灵活使用集合操作,可以高效解决许多数据处理问题。

相关新闻

  • 深入解析:港大和字节携手打造WorldWeaver:以统一建模方案整合感知条件,为长视频生成领域带来质量与一致性双重飞跃。
  • 实用指南:【代码的暴力美学】-- C语言基础编程题_1
  • 集合与列表有何不同的使用场景,如何选择?

最新新闻

  • 文成未来教育:专注高考志愿填报的专业升学规划机构 - 起跑123
  • 东莞市新开业或装修后理发店卫生+空气检测,公共场所检测 - 公共场所卫生检测
  • 2026年6月宝玑官方售后服务网络全新升级:中国区60+门店地址、电话信息同步启用 - 亨得利中国服务中心
  • GitHub AI热榜实操解码:从星标数到可运行代码的落地指南
  • 端午静听雨
  • 宁波生成式引擎GEO优化服务商技术实力对比分析 - 起跑123

日新闻

  • 信任的进化:技术实现详解——如何用JavaScript构建博弈论模拟器
  • Terrakube自定义工作流:如何集成OPA、Infracost等工具扩展IaC能力
  • grunt-concurrent快速入门:5分钟学会并行运行Grunt任务

周新闻

  • 3步解锁iOS设备:applera1n激活锁绕过完全指南
  • 39 2026 人工智能证书终极盘点,普通人选 AI 证书可以从这些方向入手
  • Redis 暴露公网有多危险?从端口检查到补救步骤

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号