我想得到N个随机数,它们的总和是一个值.
例如,假设我想要5个随机数,它们的和为1
那么,一个有效的可能性是:
0.2 0.2 0.2 0.2 0.2
Run Code Online (Sandbox Code Playgroud)
其他可能性是:
0.8 0.1 0.03 0.03 0.04
Run Code Online (Sandbox Code Playgroud)
等等.我需要这个来创建模糊C均值的所有物矩阵.
给定一个大小的数组,n我想为每个索引生成随机概率Sigma(a[0]..a[n-1])=1
一个可能的结果可能是:
0 1 2 3 4
0.15 0.2 0.18 0.22 0.25
Run Code Online (Sandbox Code Playgroud)
另一个完全合法的结果可能是:
0 1 2 3 4
0.01 0.01 0.96 0.01 0.01
Run Code Online (Sandbox Code Playgroud)
如何轻松快速地生成这些内容?任何语言的答案都很好,Java首选.
我需要生成n个百分比(0到100之间的整数),使得所有n个数字的总和加起来为100.
如果我只做了nextInt() n次,每次确保参数是100减去先前累积的总和,那么我的百分比是有偏差的(即第一个生成的数字通常是最大的等等).我如何以无偏见的方式做到这一点?
我正在寻找一种算法来生成多边形内均匀分布的点.
这是场景:
我有一个由每个点的角(x,y)处的点坐标指定的多边形.我有多边形内生成的点数.
例如,假设我有一个包含5个点的多边形:(1,1); (1,2); (2,3); (3,2); 和(3,1)
我需要在该多边形内生成20个相等的距离点.
注意:某些多边形可能不支持均匀分布的点,但我希望以尽可能多的一致性覆盖多边形的所有区域的方式分布点.(我的意思是我不希望分数比另一分数多得多)
有算法吗?或者是图书馆
我正在开发一个C#应用程序,但是任何语言都可以,因为我只需要算法,我可以翻译它.
非常感谢您的帮助