用于对相关项进行分组的算法

Arn*_*aud 4 algorithm grouping

我有一套物品.集合中的每个项目可以与一个或多个其他项目相关.我想构建一种算法,将直接或通过其他项目相关的项目分组.

示例: 我的集合是{a,b,c,d,e,f}

a和b是相关的.c与d有关,d与e有关.

该算法应生成以下组:{a,b},{c,d,e},{f}

这样做有效算法的任何想法?提前致谢 :-)

st0*_*0le 8

使用联盟查找.它的速度非常快.使用路径压缩,复杂度降低到O(a(n)),其中a(n)是Ackermann函数的倒数.