并查集・原理彻底讲透
0. 并查集到底是什么?本质:用一棵 “树” 表示一个集合;树根 = 集合唯一标识。两个点在同一棵树上 → 连通两棵不同树 → 不连通它只维护父子关系,不关心树的形状、顺序、大小,只关心谁跟谁是一伙的。1. 基础结构:parent 数组int parent[N];含义:parent[x]表示x 的直接父亲若parent[x] == x,说明 x 是根(代表元)初始化规则:一开始每个点自己是一棵树,自己是自己的爹。for (int i = 1; i = n; i++) parent[i] = i;这就是最朴素的集合:每个元素独立。用一个数组:fa[]意思是:fa [x] = x 的老大是谁规则只有一条:每个人最终都能找到一个 “总老大”,总老大的老大是自己。举个例子假设有 5 个人:1、2、3、4、5一开始谁也不认识谁,自己是自己的老大:fa[1] = 1 fa[2] = 2 fa[3] = 3 fa[4] = 4 fa[5] = 5后来关系变成:fa[2] = 3 fa[3] = 5 fa[5] = 5 fa[1] = 5
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2491262.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!