
不相交集是kruskal最小生成树中使用的一种数据结构。
这种数据结构允许我们创建两个或多个节点的并集。
它让我们确定两个节点是否属于 not 图的同一组成部分。
时间复杂度为 o(4alpha)(如果我们使用路径压缩,否则它将是对数),这是已被证明的恒定时间复杂度。
更多信息请参考
1、演示:以截图为准(已测试)2、本源码为phpweb整站打包3、作者主页:http://www.juchake.com4、关于程序安装: 本源码均为作者亲自测试过,可以正常使用,无限制,为了大家的方便安装,作者还特意录制了安装视频教程,不懂的可以学习教程后安装,谢谢,多多支持。由于是视频教程不好上传,大家到百度云下载即可http://pan.baidu.com/share/link?shar
0
class Main{
int parent[] = new int[100000];
int rank[] = new int[100000];
void makeSet(){
for(int i=1;i<=n;i++){
parent[i] = i; // initially parent of node i is i itself
rank[i] =0;// intially rank of all the nodes are 0
}
}
int findParent(int node){
if(node == parent[node]) return node; // ie if the parent of 'node' is 'node' itself then just return the node.
//return findParent(parent[node]);// else recursively call findParent to get the parent of this union.
// in order to path conpress (making sure that every node is connected to its parent in the given union)
return parent[node] = findParent(parent[node]);
//example : 7->6->4->3 , here 3 is the parent of this union, so in order to get the parent of 7 which is 3 we can path compress it. like 7->3,6->3,4->3 etc.
}
void union(int u, int v){
u = findParent(u);
v = findParent(v);
if(rank[u] < rank[v]) parent[u] =v;
else if (rank[u] > rank[v]) parent[v] = u;
else parent[u] =v; // or parent[v] = u;
// here u and v had the same rank
//and now v became parent of u hence its rank will increase
rank[v]++;
}
public static void main(String args[]) throws Exception{
Main m = new Main();
//if we where given no of nodes as n
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int n = Integer.parseInt(br.readLine());
while(n>0){
int u = n--;
int v = n--;
m.union(u,v);// this will create union of n nodes
}
// if 2 and 3 belong to the same component or not find out
if(findParent(2)! = findParent(3)) System.out.println("Different component");
else System.out.println("Same component");
}
}
以上就是不相交集图学习的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号