У меня есть списокtoMap когда ключи повторяются с различными значениями
val data = List(2, 4, 3, 2, 1, 1, 1,7)
, с которым я хочу, чтобы создать карту таким образом, что значения в приведенном выше списке являются ключом к новому с индексами в качестве новых значений я попытался
scala> data.zipWithIndex.toMap
res5: scala.collection.immutable.Map[Int,Int] = Map(1 -> 6, 2 -> 3, 7 -> 7, 3 -> 2, 4 -> 1)
, но странно это дает res5 (1) 6, но я хочу, чтобы это было 4.
Я мог бы решить его
data.zipWithIndex groupBy (_._1) mapValues (w=>w.map(tuple=>tuple._2) min)
, но есть ли способ передать функцию f в toMap так, чтобы она создавала карту желаемым образом.
Возможно, 'MultiMap' подойдет вашим потребностям? –