int find(int x){ int temp=x; while(temp!=d[temp]) temp=d[temp]; while(x!=d[x]){ x=d[x]; d[x]=temp; } return temp; }
int find(int x){ int temp=x; while(temp!=d[temp]) temp=d[temp]; while(x!=d[x]){ x=d[x]; d[x]=temp; } return temp; }
并查集:(union-find sets)是一种简单的用途广泛的集合. 并查集是若干个不相交集合,能够实现较快的合并和判断元素所在集合的操作,应
大多数情况下,查询只关心根节点是谁,并不关心这棵树的形态,查询的时候,
解题思路:这道题想了我好久,因为我把城市的编号一起
并查集是一种树型的数据结构 ,并查集可以高效地进行如下操作:- 查询元素p和元素q是否属于同一组- 合并元素p和元素q所在的组
这道题是下午看的,当时看了不会,后来看算法导论上有,有看了一些其他的资料,就做出来了。不过杭电数据坑爹啊,,,竟然有n=0的情况,让我wr了好几次。。。。
举报文章
请选择举报类型
补充说明
0/200
上传截图
格式支持JPEG/PNG/JPG,图片不超过1.9M