日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > php >内容正文

php

php 根据权重随机数,PHP根据概率产生随机数

發布時間:2025/4/5 php 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 php 根据权重随机数,PHP根据概率产生随机数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

假設?有四個選項:a?占?10%,b占20%?,C占30%?,?d?占?40%?,原理就是現獲取隨機數,然后找區間。

當然了,選項的數量可以任意。目前默認是?總和是?100%?。如果需要別的數,修改?隨機數的范圍即可。

這個算法,比較簡單,效率也還算高。

$data = array(

'a' => 10 ,

'b' => 20 ,

'c' => 30 ,

'd' => 40

);

echo randomSelect( $data );

function randomSelect( &$array ){

$datas = $array ;

if( !is_array($datas) || count($datas) == 0 )

return ;

asort($datas); //按照大小排序

$random = rand(1,100);

$sum = 0 ;

$flag = '';

foreach($datas as $key => $data ){

$sum += $data ;

if( $random <= $sum ){

$flag = $key;

break ;

}

}

if( $flag == '' ){ // 如果傳遞進來的值的和小于100 ,則取概率最大的。

$keys = array_keys($datas);

$flag = $keys[count($keys) - 1] ;

}

return $flag;

}

給定一個函數rand&lpar;&rpar;能產生0到n-1之間的等概率隨機數,問如何產生0到m-1之間等概率的隨機數?

題目:給定一個函數rand()能產生1到n之間的等概率隨機數,問如何產生1到m之間等概率的隨機數? 先把問題特殊化,例如原題變為給定一個函數rand5(),該函數可以隨機生成1-5的整數,且生成概率一 ...

面試題:給定一個函數rand&lpar;&rpar;能產生1到m之間的等概率隨機數,產生1到n之間等概率的隨機數?

雖然TX的面試已經過去好幾天了,然而慘痛的過程還歷歷在目.人生中第一次正式job面試就這么掛掉了.在于面試官的交流過程中,被問及了幾個算法設計題,在今后幾篇博文中,我一一總結與諸君分享. 1.?給定一 ...

JAVA 根據設置的概率生成隨機數

import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; i ...

【watcher】 &num;02 c&num; 中實現時間戳等,日期數字及大概率絕對隨機數 實現

在Wacher的項目中,用到了很多時間記錄的地方,為了將來能夠和在線數據打通,我們使用了時間戳來記錄時間信息 由于c#?沒有現成的方法,所以我們重新寫了一個Helper類來幫助我們使用這些公共函數 同 ...

10,隨機等概率的輸出m個不重復的數

今天看到一段代碼,可以從0.....n-1中隨機等概率的輸出m個不重復的數(n遠遠大于m).遂記錄下來. 首先,產生隨機數,不免要用到srand,rand函數.先簡單介紹下兩個函數. 1,void s ...

&lbrack;JS&rsqb;Math&period;random&lpar;&rpar;

參考網址:http://www.soulteary.com/2014/07/05/js-math-random-trick.html [JS]Math.random()的二三事 看到題目,如果大家平時 ...

php 抽獎概率 隨機數

<?php $prize_arr = array( '0' => array('id' => 1, 'title' => 'iphone5s', 'v' => 5), ' ...

C&num; 獲取一定區間的隨即數 0、1兩個值除隨機數以外的取值方法&lpar;0、1兩個值被取值的概率相等&rpar;

獲取隨機數 舉例:0-9 Random random = new Random(); int j = random.Next(0, 9); 0.1兩個值被取值的概率相等 int a = Math.Ab ...

隨機推薦

Unity3D ShaderLab 車輛噴漆光照模型實戰

這一篇,我們來創建一個車輛噴漆的光照模型.首先就是準備場景,新建Shader?&?Material. 過程比較簡單,直接看完成的代碼吧: Shader "91YGame/CarOut ...

OC中成員變量的命名

先前寫C++ 的時候,命名成員變量一般都是用 m_veriableName:的方式,但是進到新項目組,用了OC以后,發現成員變量都是用 veriableName_的方式,最后的一個下劃線表示是成員變量 ...

計算幾何基礎——矢量和叉積 &amp&semi;&amp&semi; 叉積、線段相交判斷、凸包(轉載)

轉載自?http://blog.csdn.net/william001zs/article/details/6213485 矢量 如果一條線段的端點是有次序之分的話,那么這種線段就稱為 有向線段,如果 ...

poj 2251 搜索

Dungeon Master Time Limit:?1000MS ? Memory Limit:?65536K Total Submissions:?13923 ? Accepted:?5424 D ...

PowerDesigner 怎么給 Table Properties 增加注釋和默認值

1.? 選中表,右鍵 2. 選中“comment”, 這個就是列的注釋 3.還是這個頁面 ,往下有個“default value”, 這個就是你設置的默認值. 4.?這個是怎么設置默認值.

ES聚合實例

在es中需要根據app_categor進行聚合,JSON查詢語句如下: { "query": { "bool": { "must": [ { ...

list集合接口

import java.util.ArrayList; import java.util.List; class Phone { private String brand; private doubl ...

GMA Round 1 向量計算

傳送門 向量計算 已知$\left |\overrightarrow{AB} \right |^2+\left |\overrightarrow{CD} \right |^2+\left |\over ...

Mongodb 筆記 - 性能及Java代碼

性能 以下數據都是在千兆網絡下測試的結果 寫入 數據量的增大會導致內存占滿, 因為mongodb會將數據盡可能地載入內存, 索引占用的空間也很可觀非安全模式下, 速度取決于內存是否占滿能差一個數量級, ...

bzoj1497 &lbrack;NOI2006&rsqb;最大獲利 最大權閉合子圖

鏈接 https://www.lydsy.com/JudgeOnline/problem.php?id=1497 思路 最大權閉合子圖的裸題 一開始知道是這個最大權閉合子圖(雖然我不知道名字),但是我 ...

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的php 根据权重随机数,PHP根据概率产生随机数的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。