在实际应用中可能你会碰到抽奖系统,或者有个广告位让你按权重进行显示。概率性的东西,要用到随机函数Math.random()。

  某物品的概率 = 自身权重/总权重,为了避免浮点数精度问题,我们将概率转化为权重进行计算,自身权重 = 某物品的概率 * 总权重。所以随机抽取的物品为Math.random()* 总权重。

function roll(args){let sum_weight = 0;let result = null;const items = args.slice().map(item => (sum_weight += item.weight) && item);   // 计算总权重const random = Math.ceil(Math.random() * sum_weight);               // 随机抽取的物品位置let start = 0;                                  // 区间的开始,第一个是为0while (items.length) {const item = items.shift();                   // 取出第一个商品const end = start + item.weight;    // 计算区间的结束if (random > start && random <= end) {        // 如果随机数在这个区间内,说明抽中了该商品,终止循环result = item;break;}start = end;                                  // 当前区间的结束,作为下一个区间的开始}return result ? result.item : null;}

按概率(权重)抽取(显示)相关推荐

  1. html在线随机抽取,利用纯html+javascript实现随机抽取显示

    求助:利用纯html+javascript实现随机抽取显示 1 一个智力问答页面,每次显示一个判断题,最多可以连续答10题.题目从固定的10个问题中随机抽出一个且不能重复. 2 问题只有两种答案,对或 ...

  2. 2021-03-17 RK3288 接PHILIPS 4K显示器HDMI开机概率性不显示的问题

    RK3288 接PHILIPS 4K显示器HDMI开机概率性不显示的问题 一.测试发现在philips显示器休眠的情况下,rk3288 开机后hmdi无法唤醒显示器.  cat /d/dw-hdmi/ ...

  3. mysql 根据权重抽取随机数_根据权重产生随机数

    假如一个抽奖如下信息 int w_list[5] = { 20, 10, 40, 15, 15 }; string names[5] = { "电饭锅", "牙刷&quo ...

  4. 【分析笔记】LVGL v8.2.0 使用 freetype 概率性无显示的问题

    使用目前最新的 Releases 版本 LVGL v8.2.0 ,移植好 freetype2 后测试,发现每次启动程序时会高概率出现屏幕显示全白色背景,无任何内容的问题. 打开日志开关,出现问题时会有 ...

  5. NLP-阅读理解:“阅读理解”综述(Machine Reading Comprehension, MRC)【完形填空、多项选择、抽取式(答案片段抽取)、生成式(自由作答)】《机器阅读理解数据集》

    <原始论文:Neural Machine Reading Comprehension: Methods and Trends> 一.阅读理解概述 所谓的机器阅读理解(Machine Rea ...

  6. 概率编程编程_概率编程语言的温和介绍

    概率编程编程 I recently started a new newsletter focus on AI education. TheSequence is a no-BS( meaning no ...

  7. 图解AI数学基础(2) | 概率与统计(要点速查清单·完结)

    作者:韩信子@ShowMeAI 教程地址:https://www.showmeai.tech/tutorials/83 本文地址:https://www.showmeai.tech/article-d ...

  8. 基于功能连接的认知机器学习预测模型:特征权重可靠吗?

    文章来源于微信公众号(茗创科技),欢迎有兴趣的朋友搜索关注. 利用机器学习方法,可以从个人的功能性大脑连接中预测认知表现.但是预测模型在支持认知的神经生物学加工方面仍存在争议,目前的见解也比较有限.特 ...

  9. 使用快速权重来关注最近的过去

    主线为 Jimmy Ba 及 Geoffrey Hinton 等人的文章"Using Fast Weights to Attend to the Recent Past".标题译过 ...

最新文章

  1. hdu-1166敌兵布阵
  2. poj1068解题报告(模拟类)
  3. /bin/bash: jar: command not found
  4. Leet Code OJ 112. Path Sum [Difficulty: Easy]
  5. 【洛谷】P1641 [SCOI2010]生成字符串(思维+组合+逆元)
  6. Android char数据类型乱码��解决方法
  7. 用逻辑回归实现图像识别
  8. 【颜色空间】CLElab颜色空间
  9. Android篮球计分器论文,单片机课程设计报告 篮球计时计分器
  10. 考研英语二重要词汇整理
  11. 江西不动产登记局今日挂牌
  12. webscraper改写案例分析
  13. eclipse中安装的lombok插件不起作用,报错:找不到getter
  14. Vue3中setup前写async页面不显示
  15. 100000以内的质数表
  16. UCOSIII 系统内部任务
  17. EB Tresos 入门指南
  18. 微信小程序Android的健身APP的hbuilderx uni-app(SSM,MySQL)
  19. Mdeditor编辑器
  20. 利用ffmpeg把一帧原始视频数据转换成jpg格式的图片

热门文章

  1. 英伟达 Nano 新手必读:Jetson Nano 深度学习算法模型基准性能测评
  2. 1天1个岗位画像洞察-无线DPM岗位
  3. AIR780E使用AT连接TCP收发数据
  4. 解决mac右键谷歌翻译失效
  5. 去中心化金融体系初现,MIGO挖掘DeFi+NFT+DAO深层潜能
  6. html将图片做成书的封面,把照片做成杂志 个人照片制作成报纸、杂志封面效果|封面设计软件[图文教程]...
  7. MFC添加界面的背景图片方法总结
  8. Elasticsearch搜索引擎一些参数含义和用法
  9. 重大灵异事件!我的手机大半夜地自己在B站看番剧!!!
  10. 2017-4-15,16_akala啦_新浪博客