gpt4 book ai didi

arrays - 如何增加从数组中获取特定随机对象的可能性

转载 作者:行者123 更新时间:2023-11-28 12:41:43 25 4
gpt4 key购买 nike

通常,我知道我可以通过以下方式获取数组的随机元素:

var myArray = [x, y, z]
let myArrayLength = UInt32(myArray.count)
let myArrayIndex = Int(arc4random_uniform(myArrayLength))
let randomElement = myArray[myArrayIndex]

但是我怎样才能使 y 成为随机元素的可能性是 x 的可能性的两倍,而 z 成为随机元素的可能性的可能性是 y 的三倍?

更新

注意:其中 x、y 和 z 是 CGPoint

最佳答案

一个简单的方法是像这样重写你的数组:[x,x,y,z]。那么,得到x的概率变为0.5,y的概率变为0.25,z的概率变为0.25。只需尽可能多地重复高概率的符号,例如 [x, y, y, z, z, z, z] 就可以满足您的要求。

关于arrays - 如何增加从数组中获取特定随机对象的可能性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39253319/

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