首页 > 解决方案 > 循环搜索算法

问题描述

我正在尝试创建一个能够使用graphx和scala在图中找到圆圈的算法。我正在考虑的是将所有 vertexID 加载到一个数组中,创建一个循环来创建第二个数组,填充可以到达的顶点,然后对该数组执行相同的操作,依此类推。基本上,它看起来如下: StartArray -> 1AwayNodes -> 2AwayNodes -> 3AwayNodes等等。例如,如果节点在其自己的“3AwayNodes”数组中,则三角形将是,如果节点在其自己的“4AwayNodes”数组中,则为“正方形”。我有我的图表,并考虑了以下问题:

graph.vertices.foreach{v => (vertexIDarray :+ v.VertexId)}

但它说“值VertexId不是(org.apache.spark.graphx.VertexId,String)的成员”

我对 scala 非常陌生,如果有人能指出我解释这些功能而不仅仅是使用这些功能的任何地方,我将不胜感激。

标签: apache-sparkspark-graphx

解决方案


好吧,深入研究这个问题,我得出的结论是

graph.vertices.foreach{v => (vertexIDarray :+ v._1)}

应该做我打算实现的目标如果它实际上是正确的解决方案,我将选择它作为其他新手将来参考的答案


推荐阅读