Учитывая карту [String, Set [String]], что является элегантным и эффективным способом в Scala для определения набора всех пар различных ключей, где соответствующие наборы имеют непустое пересечение?Эффективный способ идентификации именованных наборов с общими элементами в Scala
Например зафиксировать карту, как
val input = Map (
"a" -> Set("x", "z"),
"b" -> Set("f")
"c" -> Set("f", "z", "44")
"d" -> Set("99")
)
то требуемый выход
Set(
("a", "c"),
("b", "c")
)
Эффективное в этом контексте означает, что лучше, чем O (N^2), где п равно сумме числа элементов в семействе множеств, заданных в качестве входных данных.
@Calpis Не могли бы вы усилить свое предложение? –