调用 Array#shuffle
随机打乱一个数组,但我想重复打乱 - 即,每次都以相同的方式打乱。有办法吗?例如,我想调用 shuffle_with_key(123)
并每次都得到相同的结果。
最佳答案
Array#shuffle
可以采用种子 Random
实例。
a = [1,2,3,4]
seed = 1
a.shuffle(random: Random.new(seed))
# => [4, 1, 3, 2]
a.shuffle(random: Random.new(seed))
# => [4, 1, 3, 2]
只需将 seed = 1
替换为您要使用的任何随机种子即可。
关于arrays - 如何每次都以相同的方式对数组进行洗牌?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23047911/