如何在Spark中使用Set的元素生成非直接边

How to generate undirect edges by using the element of a Set in Spark

例如,我正在尝试使用 Set.Set(1, 4, 5), 的元素生成一些不直接的边,结果必须是这样的:

(1,4)
(1,5)
(4,5)

任何解决方案将不胜感激。

这是一个使用子集和过滤器的简单示例

 val set = Set(1,4,5)

val result = set.subsets().map(_.toList).toList

输出:

List(1, 4)
List(1, 5)
List(4, 5)

如果你想要元组列表,那么你可以转换为

result.map(list => (list(0), list(1)))

输出:

(1,4)
(1,5)
(4,5)

希望对您有所帮助!