gpt4 book ai didi

JavaScript - 如何在不替换的情况下随机抽样项目?

转载 作者:搜寻专家 更新时间:2023-11-01 04:46:43 26 4
gpt4 key购买 nike

JavaScript

我试过搜索类似的东西,但找不到。

这是一个简单的想法:

一个。取一个 0 到 10 之间的随机数。

假设随机数是 3。

然后,保存数字(3)。

现在,再取一个 0 到 10 之间的随机数,但不能是 3,因为它已经出现了。

最佳答案

一种解决方案是生成一个数组(一个“桶”),其中包含您要选择的所有值,在本例中是从 0 到 10 的所有数字。然后您从数组中随机选择一个并将其从桶中删除。请注意,下面的示例不会检查存储桶是否为空,因此如果您调用下面的函数超过 10 次,您将收到错误消息。

var bucket = [];

for (var i=0;i<=10;i++) {
bucket.push(i);
}

function getRandomFromBucket() {
var randomIndex = Math.floor(Math.random()*bucket.length);
return bucket.splice(randomIndex, 1)[0];
}

// will pick a random number between 0 and 10, and can be called 10 times
console.log(getRandomFromBucket());

关于JavaScript - 如何在不替换的情况下随机抽样项目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12987719/

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