/**按权重随产生机值,返回随机到的对象
* weights_arr{
* weight:10,
* }
*/
RandomByWeight(weights_arr) {
var total_weight = weights_arr.reduce((total, w) => { return total + w.weight }, 0);
var rand = Math.random() * total_weight;
for (var i = 0; i < weights_arr.length; i++) {
rand = rand - Number(weights_arr[i].weight);
if (rand <= 0) {
return weights_arr[i];
}
}
}
【js】【算法】权重随机数
最新推荐文章于 2026-06-17 07:16:54 发布
本文介绍了一种基于权重进行随机选择的算法实现。该算法通过计算总权重并利用随机数生成器来选择对象,确保每个对象被选中的概率与其权重成正比。适用于需要根据权重分配进行随机抽样的应用场景。
Python3.8
Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本
您可能感兴趣的与本文相关的镜像
Python3.8
Conda
Python
Python 是一种高级、解释型、通用的编程语言,以其简洁易读的语法而闻名,适用于广泛的应用,包括Web开发、数据分析、人工智能和自动化脚本


532

被折叠的 条评论
为什么被折叠?



