2

是否有一个 Neo4J 图的查询可以遍历所述图并根据相互关系查找节点?例如,如果节点 A 与节点 B 相关(双向),则 B 与 C 相关,C 与 D 相关,D 与 A 相关,A 与 C 相关,B 与 D 相关,这样有每个节点都连接到每个其他节点的子图,是否有一种有效的方法来返回该子图或节点组?

我意识到我的解释很糟糕,所以我在控制台中提供了一个示例图:http: //console.neo4j.org/r/qb2xmp

在这里,我创建了一个图表,我想返回 3 个或更多相互关联的组 - 因此,在这种情况下,我希望返回 Scott、Josh、Frank 和 Ben 的组,如以及弗兰克、本和埃里克的小组。如果可能的话,我希望能够确定谁组成了这些单独的组。

4

2 回答 2

1

这是 的一个实例,Clique Problem并且是 NP 完全的。
这是一个关于 SO 的相关问题,有一个很好的解释!

抱歉,我太早按了 Enter。所以没有“有效”的方法来做到这一点。但在某些情况下,这并非不可尝试,如果您能找到一种算法来解决这个一般问题并在 Neo4J 中实现它,那么您将获得最大的运气。

于 2012-06-27T19:19:14.580 回答
0

你有没有找到任何解决方案?

我在我的文本网络可视化项目中实现了类似的东西,但它启动了Gephi Toolkit(在 Java 上)以在图上执行一些度量计算,检测社区等。但这太重了......

不过,您可能有兴趣研究 Gephi 的算法,尤其是在Sigma.Js中实现的 Force Atlas 布局,尤其是 Gephi 本身使用的模块化算法。这可能会给你一些关于如何进行的线索......

于 2014-02-13T19:10:43.190 回答