抽奖算法分析
来源:互联网 发布:免费的婚恋软件 编辑:程序博客网 时间:2024/05/19 15:41
**
* 算法分析:假设为有个容器A(a1,a2,a3......an),从A个中随机取出一个an,要求an小于规定v,那么每一取出一个的可能性是
* rate=v/100 中可能性,
* 设置命中率为0.5,0.5=v/100;v=50
* 同理:
* 1/20=v/100;v=5,
* @param array $proArr
*/
function get_rand($proArr) {
$result = '';
//概率数组的总概率精度
$proSum = array_sum($proArr);
//概率数组循环
foreach ($proArr as $key => $proCur) {
$randNum = mt_rand(1, $proSum); //抽取随机数
if ($randNum <= $proCur) {
$result = $key; //得出结果
break;
} else {
$proSum -= $proCur;
}
}
unset ($proArr);
return $result;
}
* 算法分析:假设为有个容器A(a1,a2,a3......an),从A个中随机取出一个an,要求an小于规定v,那么每一取出一个的可能性是
* rate=v/100 中可能性,
* 设置命中率为0.5,0.5=v/100;v=50
* 同理:
* 1/20=v/100;v=5,
* @param array $proArr
*/
function get_rand($proArr) {
$result = '';
//概率数组的总概率精度
$proSum = array_sum($proArr);
//概率数组循环
foreach ($proArr as $key => $proCur) {
$randNum = mt_rand(1, $proSum); //抽取随机数
if ($randNum <= $proCur) {
$result = $key; //得出结果
break;
} else {
$proSum -= $proCur;
}
}
unset ($proArr);
return $result;
}
0 0
- 抽奖算法分析
- 抽奖分析
- 抽奖 算法
- 抽奖算法
- 抽奖算法
- 抽奖-算法
- 抽奖算法
- php 关于抽奖算法
- php 抽奖概率算法
- 抽奖简单算法
- 一个抽奖算法
- thinkphp 抽奖算法
- Java 抽奖算法
- 抽奖算法总结
- 大转盘抽奖算法
- 红包抽奖算法
- PHP抽奖算法
- Java 抽奖算法
- UVA 658 - It's not a Bug, it's a Feature!(dijkstra+优先队列)
- 第一天 环境变量的配置
- Eclipse---Android 软件开发之如何使用Eclipse Debug调试程序详解
- 出现( linker command failed with exit code 1)错误总结
- 互联网产品设计进阶笔记(6)理解交互设计
- 抽奖算法分析
- 用jquery操作属性和类名
- IIS7.5上的REST服务的Put操作发生HTTP Error 405.0 - Method Not Allowed 解决方法
- Builder pattern - best understanding
- js和jquery控制标签class,css
- 2012年5月SAT香港真题解析
- DATALIST正反向排序,带▲和▼提示的【转一】
- ecshop二次开发 结构分析和代码研究 呵呵
- 我的第一堂Java课 07/14 上午