22 lines
516 B
Scala
22 lines
516 B
Scala
import java.util
|
|
import scala.util.Random
|
|
|
|
object KnuthsAlgorithmS extends App {
|
|
|
|
import scala.collection.JavaConverters._
|
|
|
|
val (n, rand, bin) = (3, Random, new Array[Int](10))
|
|
|
|
for (_ <- 0 until 100000) {
|
|
val sample = new util.ArrayList[Int](n)
|
|
for (item <- 0 until 10) {
|
|
if (item < n) sample.add(item)
|
|
else if (rand.nextInt(item + 1) < n)
|
|
sample.asScala(rand.nextInt(n)) = item
|
|
}
|
|
for (s <- sample.asScala.toList) bin(s) += 1
|
|
}
|
|
|
|
println(bin.mkString("[", ", ", "]"))
|
|
}
|