мне нужно обратить картуReverse карты типа [Int, Seq [Int]]
customerIdToAccountIds:Map[Int, Seq[Int]]
таким образом, что каждый идентификатор учетной записи является ключом к списку всех идентификаторов клиентов учета (многий -to-many):
accountIdToCustomerIds:Map[Int, Seq[Int]]
Что такое хороший идиоматический способ достичь этого? Благодаря!
Вход:
val customerIdToAccountIds:Map[Int, Seq[Int]] = Map(1 -> Seq(5,6,7), 2 -> Seq(5,6,7), 3 -> Seq(5,7,8))
val accountIdToCustomerIds:Map[Int, Seq[Int]] = ???
1 -> Seq(5,6,7)
2 -> Seq(5,6,7)
3 -> Seq(5,7,8)
Выход:
5 -> Seq(1,2,3)
6 -> Seq(1,2)
7 -> Seq(1,2,3)
8 -> Seq(3)
Почему downvotes? –
Вы и jwvh дали отличные, очень похожие ответы, и я выбрал ваш, потому что я чувствовал, что его легче поддерживать. Спасибо за помощь! – user455497