gpt4 book ai didi

javascript - 如何在满足特定条件的情况下随机化数组?

转载 作者:行者123 更新时间:2023-12-01 23:28:00 25 4
gpt4 key购买 nike

我有一个元素数组。我想随机化元素的位置,但我希望在随机化数组的输出中满足某些标准。

var array = [1,1,2,1,1,2,1,1,1,2];

到目前为止我所做的是使用一个函数来随机化数组的顺序。但是,我不知道如何将这些条件包含到函数中。这是我正在使用的功能:

function shuffle(array) {
var len = array.length, temp; // While there are elements in the array
while (ctr > 0) {
index = Math.floor(Math.random() * len); // Pick a random index
ctr--; // Decrease ctr by 1
temp = array[len]; // And swap the last element with it
array[len] = array[index];
array[index] = temp;
}
return array;
};

我希望这个数组是随机的,但数组中的 2 不应在随机化后连续出现。我希望输出有点像这样。

var array = [2,1,1,1,2,1,1,2,1,1];

如能提供这方面的帮助,我们将不胜感激。谢谢。

最佳答案

一个可能的想法:

假设您想要三个 2,从 2 1 2 1 2 开始。在达到所需长度之前,将 1 插入 4 个可能的位置 _ 2 1 _ 2 1 _ 2 _,随机选择。

关于javascript - 如何在满足特定条件的情况下随机化数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66901129/

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