package test;public class Test {public static double[] multiPros;public static void main(String[] args) {multiPros = new double[4];multiPros[0] = 0.14;multiPros[1] = 0.49;multiPros[2] = 0.06;multiPros[3] = 0.31;for (int i = 0; i < 10; i++) {int k = nextDiscrete(multiPros);System.out.println(k);}}public static int nextDiscrete(double[] probs){double sum = 0.0;for (int i = 0; i < probs.length; i++)sum += probs[i];double r = Math.random() * sum;sum = 0.0;for (int i = 0; i < probs.length; i++) {sum += probs[i];if (sum > r)return i;}return probs.length - 1;}
}
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态