给定一个大小为 n
的数组,我想为每个索引生成随机概率,使得 Sigma(a[0]..a[n-1])=1
一个可能的结果可能是:
0 1 2 3 4
0.15 0.2 0.18 0.22 0.25
另一个完全合法的结果可以是:
0 1 2 3 4
0.01 0.01 0.96 0.01 0.01
如何轻松快速地生成这些内容?任何语言的答案都可以,Java 优先。
最佳答案
获取 n 个随机数,计算它们的总和,并通过将每个数字除以总和将总和归一化为 1。
关于java - 生成总和为 1 的 N 个数字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2171074/