任务是使用Scala pregel找到特定大小k的循环,其中k是用户输入。然而,当发现一个循环时,我不知道在pregel中应该发送什么消息。到目前为止,我尝试的是使用一个字符串,其中包含它所经过的顶点列表,并将其放入vertex属性中。则如果srcAttr已经包含dstId,则检测循环。但我不确定之后该怎么做才能得到总的周期数。此外,该任务还指出,如果它包含其他较小的循环,则它不是一个循环。
发布于 2018-10-24 16:31:49
每个顶点向其邻居发送包含(1)源顶点id和(2)消息正在遍历的跳数(初始设置为1)的消息。
每个顶点在将(2)值递增1之后重新路由接收到的消息。
检查每条消息是否为msg.src_vid == msg.dst_id,并查看跳数
https://stackoverflow.com/questions/52297160
复制相似问题