我正在解决一个问题,我得到了这个:
ant : scala.collection.mutable.ListBuffer[Set[Int]] = ListBuffer(Set(), Set(0), Set(0), Set(1), Set(2), Set(1), Set(3,4), Set(5, 6), Set(7))
ListBuffer 中的 Set 表示依赖关系,例如:ant(1) 是 Set(0),这意味着 ant(1) 依赖于 ant(0),即 Set()。与其他相同,另一个例子:ant(7) 是 Set(5, 6),这意味着 ant(7) 依赖于 ant(5) 和 ant(6)。
我需要获得的是一个新的 ListBuffer[Set[Int]],其中包含 Sets 之间的所有依赖关系,没有重复,例如:ant(6) 依赖于 ant(3) 和 ant(4),同时 ant( 3) ant(1) 和 ant(4) 依赖于 ant(2),ant(1) 和 ant(2) 依赖于 ant(0),所以 ant(6) 中所有依赖的结果是: 设置(3,4,1,2,0)
所以初始 ListBuffer 的结果应该是:
solution : scala.collection.mutable.ListBuffer[Set[Int]] = ListBuffer(Set(), Set(0), Set(0), Set(1,0), Set(2,0), Set(1,0), Set(3,4,1,2,0), Set(5,6,1,3,4,0,2), Set(7,5,6,1,0,4,3,2))
最好的方法是什么?
谢谢。