我目前正在开展一个项目,这需要我在四个不同元素之间保持可变的概率平衡。在我的情况下,我需要在北,西,南和东方向之间做出随机选择,这可以在代码中的多个点受到影响和改变。我有的限制:
这是否有一个简洁的算法/数据结构解决方案?我现在有一种简单易用的方式,但我很想知道这个问题是否更简洁。
答案 0 :(得分:1)
为每个方向分配多个点,并且不要担心它们加起来为100.相反,您可以随时通过将每个点总数除以所有点值的总和来将点转换为概率。
例如,说每个方向都有10个点。所有四个的总和将是40,因此每个方向的概率为10/40或25%。
让我们说北方增加10点。然后它将是20,其余的将是10.现在总数为50,北方概率为20/50或40%,其他三个概率为10/50或20%。