import scala.collection.mutable
def printKMostFrequentNumbers(arr: Array[Int], K: Int): Unit = {
val mp = mutable.Map[Int, Int]()
for (num <- arr) {
mp(num) = mp.getOrElse(num, 0) + 1
}
val sortedMap = mp.toSeq.sortBy(-_._2)
for (i <- 0 until K) {
println(sortedMap(i)._1)
}
}
val arr = Array(4, 5, 19, 50, 5, 19, 5, 8, 19, 3, 3, 6, 3, 27, 19, 3, 3)
val K = 2
printKMostFrequentNumbers(arr, K)
/*
run:
3
19
*/