如何从 Scala 列表中交换随机索引?
how can I swap a random index from a list in scala?
当你知道要交换哪些值时,我知道如何这样做
val li: List[Int] = List(1.1,2.2,3.1, 1.11, 2.1)
li.updated(0,li(2)).updated(2,li(0))
但是,如果你想完全交换 2 个随机索引,你会怎么做??
val li: List[Double] = List( . . )
val x = util.Random.nextInt(li.length)
val y = util.Random.nextInt(li.length)
li.updated(x,li(y)).updated(y,li(x))
注意:当 x
== y
时可能没有交换,但这仍然是安全的,即使对于小的 List
。
当你知道要交换哪些值时,我知道如何这样做
val li: List[Int] = List(1.1,2.2,3.1, 1.11, 2.1)
li.updated(0,li(2)).updated(2,li(0))
但是,如果你想完全交换 2 个随机索引,你会怎么做??
val li: List[Double] = List( . . )
val x = util.Random.nextInt(li.length)
val y = util.Random.nextInt(li.length)
li.updated(x,li(y)).updated(y,li(x))
注意:当 x
== y
时可能没有交换,但这仍然是安全的,即使对于小的 List
。