gpt4 book ai didi

arrays - 从数组中选择随机唯一元素

转载 作者:行者123 更新时间:2023-12-02 04:51:59 25 4
gpt4 key购买 nike

This question介绍如何使用 sample 从数组中选择随机元素,但我想多次执行此操作,每次都选择一个唯一的。

我能想到的最简单的解决方案是这样的,但我觉得必须有更简单的方法(不修改原始数组):

myArray = ["stuff", "widget", "ruby", "goodies", "java", "emerald", "etc" ]

selected = []

first = myArray.sample
selected << first

second = myArray.sample
while(selected.include? second) do
second = myArray.sample
end

selected << second

编辑:

在我的具体情况下,我不会立即一个接一个地调用,因此使用带有示例的参数没有帮助

最佳答案

你可以这样做:

(myArray - selected).sample

例如如果:

selected = ['ruby', 'goodies']

然后:

myArray - selected #=> ["stuff", "widget", "java", "emerald", "etc"]

因此,sample将从["stuff", "widget", "java", "emerald", "etc"]中取出.

关于arrays - 从数组中选择随机唯一元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18649260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com