首页 > 其他分享 >set集合

set集合

时间:2024-03-26 16:22:42浏览次数:15  
标签:set st print add st1 st2 集合

  • 概述
存放不可重复的数据,存放数据是无序的
  • 基础使用
st = set({})  # 空的set集合
print(type(st))

st = {1,2,3,4,5,6,5,5}
print(st)  # 输出的内容不会重复

# 去重
lst = ["张三","李四","张三","王五"]
st = set(lst)
print(st)

# 重复的添加不会累计
st = set({})
st.add("张三")
st.add("李四")
st.add("张三")
st.add("王五")
st.add("闸弄六")
print(st)

# 随机删除一个元素,返回被删除的元素
it = st.pop()
print(it)
print(st)

# 删除指定的元素
de = "王五"
if de in st:
    st.remove(de)  # 如果指定的元素不存在,就报错
print(st)

# 修改,先删除,再添加
st = {1,2,3,4}
# 把2修改为10
st.remove(2)
st.add(10)
print(st)

st1 = {1,2,3,4,5,6}
st2 = {3,4,6,9,10}
# 求交集
st3 = st1 & st2
print(st3, type(st3))
# 求并集
st4 = st1 | st2
print(st4)
# 求差集
st5 = st1 - st2
print(st5)
st6 = st1.difference(st2)
print(st6)

标签:set,st,print,add,st1,st2,集合
From: https://www.cnblogs.com/dogleftover/p/18096952

相关文章

  • 洛谷题单指南-集合-P1955 [NOI2015] 程序自动分析
    原题链接:https://www.luogu.com.cn/problem/P1955题意解读:要判断约数条件是否可以同时满足,主要是要判断不相等的情况。解题思路:对于相等的条件,直接进行集合合并即可;对于不相等的条件,判断两者是否属于同一个集合,如果形成矛盾,则条件不能成立。由于i,j的范围至10^9,定义并查集如果......
  • 列表、元组、字典和集合
    一、for循环遍历列表、元组、字典和集合1.遍历列表testList=[1,2,3,4,4]foritemsintestList:print(items,end='-')2.遍历元组testTuple=(4,4,1,1,1)foritemsintestTuple:print(items,end='-')3.遍历字典testDict={'name':'xiaoxiao......
  • 洛谷题单指南-集合-P1892 [BOI2003] 团伙
    原题链接:https://www.luogu.com.cn/problem/P1892题意解读:此题与关押罪犯问题非常像,本质上就是要合并所有的朋友。解题思路:首先,初始化并查集;对于每一对人的关系,如果是朋友,直接进行合并;如果是敌人,先查看双方之前是否有记录其他敌人,如果有,则将一方与另一方的敌人进行合并,如果没......
  • Solution Set - 数学
    A-PerpetualSubtraction题意:一个数有pi的概率为i,一次操作将数随机变为小于等于它的数,为m次操作后变为每个数的概率。给出的最大数\(N(1 ≤ N ≤ 10^5)\),操作数\(M(0 ≤ M ≤ 10^{18})\)。首先有\(O(nm)\)的dp,\(f_{i,j}\)为经过i此操作后为数j的概率,有转移\(f_{i,j}......
  • [算法]分割等和子集算法 & bitset容器应用
    LeetCode416.分割等和子集1题目描述给你一个只包含正整数的非空数组nums。请你判断是否可以将这个数组分割成两个子集,使得两个子集的元素和相等。1.1输入测试示例1:输入:nums=[1,5,11,5]输出:true解释:数组可以分割成[1,5,5]和[11]。示例2:输入:nums=[1,2,3,5]......
  • 洛谷题单指南-集合-P1621 集合
    原题链接:https://www.luogu.com.cn/problem/P1621题意解读:a~b之间的数,把有大于等于p的公共质因数的数进行合并作为一个集合,求一共有多少个集合。解题思路:要进行集合合并、统计集合数,可以使用并查集,有两种做法:1、暴力法80%的数据在1000范围内,因此通过双重循环枚举,判断两个数的......
  • Java面试必问题18:线程安全的集合类和有序的集合类
         精华篇:  极致精简解释有序的集合类包括:TreeMap-基于红黑树实现的有序Map。LinkedHashMap-基于哈希表和双向链表实现的有序Map。TreeSet-基于红黑树实现的有序Set。LinkedHashSet-基于哈希表和双向链表实现的有序Set。示例:有序Map:TreeMap有序Li......
  • GEE入门及进阶教程|在 Earth Engine 中绘制图像集合
            在前面的内容中,我们计算了增强植被指数(EVI),以说明卫星图像上的波段运算,代码在单个图像上被调用一次。如果我们想以相同的方式计算整个ImageCollection中的每个图像的EVI,该怎么办?在这里,我们使用EarthEngine工作流程第二部分的关键工具,即.map命令。......
  • 学点儿Java_Day10_集合框架(List、Set、HashMap)
    1简介ArrayList:有序(放进去顺序和拿出来顺序一致),可重复HashSet:无序(放进去顺序和拿出来顺序不一定一致),不可重复 @Testpublicvoidtest1(){String[]array=newString[3];//List:有序可重复//有序:放入顺序与拿出顺序......
  • 【知识点】高并发中的集合
    本文旨在总结多线程情况下集合的使用Java中的集合大致以下三个时期:第一代线程安全集合类以Vector、HashTable为代表的初代集合,使用synchronized在修饰方法,从而保证线程安全。缺点:效率低。代码示例Vectoradd方法源码/***Appendsthespecifiedelementtotheendoft......