Advertisement

蓝桥杯 Python 并查集(Python 版本)

阅读量:

并查集

并查集被称为一种树状的数据结构,在计算机科学中被广泛用于处理一系列不相交集合的合并以及查询操作。

并查集的核心思想在于使用一个数组存储了所有树的集合信息每个树的根节点都充当着其所在集合的代表节点 。我们只需通过识别出某个元素的树根节点即可判断该元素属于哪一个集合。

复制代码
 n,m=map(int,input().split())

    
 p=[i for i in range(n+1)]
    
 def root(x):
    
     if p[x]!=x:
    
     p[x]=root(p[x])
    
     return p[x]
    
 def union(x,y):
    
     if root(x)!=root(y):
    
     p[root(x)]=root(y)
    
 for i in range(m):
    
     z,x,y=map(int,input().split())
    
     if z==1:
    
     union(x,y)
    

全部评论 (0)

还没有任何评论哟~