![]() |
1
18
我刚才写的,正好符合你的要求。我相信奥布拉斯指的是费希尔·耶茨的洗牌:
请注意,修改array.prototype可能被认为是错误的形式。您可能希望将此实现为一个将数组作为参数的独立方法。不管怎样,要完成它:
或者,如果您不想实际修改原始文件:
|
![]() |
2
6
你应该实现 Fisher-Yates shuffle (也被称为Knuth洗牌)。 看看提供的好答案 here . |
![]() |
3
1
你的第一种方法是可行的。只需洗牌18个元素,并采取前12个。 |
![]() |
4
1
最近我自己也遇到了这个问题。这里的帖子有助于: http://waseemsakka.com/2012/02/14/javascript-dropping-the-last-parts-of-an-array-and-randomizing-the-order-of-an-array/ . 基本上,从随机化数组开始:
这将随机化18个元素的顺序。然后,为了只保留前12个元素,您只需删除最后6个元素:
|
![]() |
Megrez7 · C#ToArray转换合并为一行,导致数组元素更改 6 月前 |
![]() |
bairog · 从按属性筛选的对象数组字典中创建值数组 6 月前 |
![]() |
Anka Hanım · 关于结构和动态数组地址的问题 6 月前 |
![]() |
Geremia · 2D NumPy数组+1D数组? 7 月前 |
![]() |
MARTIN · 交换第一个和最后一个单词,反转所有中间的字符 7 月前 |
![]() |
Paul Williams · 迭代数组时输出有问题 7 月前 |