首頁 > 後端開發 > php教程 > PHP隨機排序加入權重因子

PHP隨機排序加入權重因子

*文
發布: 2023-03-18 11:46:01
原創
2159 人瀏覽過

PHP隨機排序很多人都會,可是如何實現有權重的隨機排序呢?本文就分享依照權重隨機排序數據,希望對大家有幫助。

具體實作方法如下:

<?php   
/**  
 * @param array $weight 权重  例如array(&#39;a&#39;=>10,&#39;b&#39;=>20,&#39;c&#39;=>50)  
 * @return string key   键名   
 */  
function roll($weight = array()) {   
 $roll = rand ( 1, array_sum ( $weight ) );   
 $_tmpW = 0;   
 $rollnum = 0;   
  foreach ( $weight as $k => $v ) {   
  $min = $_tmpW;   
   $_tmpW += $v;   
   $max = $_tmpW;   
   if ($roll > $min && $roll <= $max) {   
    $rollnum = $k;   
    break;   
   }   
 }   
  return $rollnum;   
}   
 
$row=roll(array(&#39;a&#39;=>10,&#39;b&#39;=>20,&#39;c&#39;=>50));   
echo $row;   
?>
登入後複製


#相關推薦:

PHP中陣列的三種排序方法php 快速排序 php 排序演算法 php 排序函

#php 排序演算法程式不用遞迴

#PHP常見排序演算法學習


#

以上是PHP隨機排序加入權重因子的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板