2
我有一個數組,每個值用於檢索基於這些權重的隨機值的權重。我過去曾經使用過類似的東西:隨機加權陣列的權重小於1和小數
$items = array("value1" => 30, "value2" => 70);
$weighted = array();
foreach($items as $value => $weight) {
$weighted = array_merge($weighted, array_fill(0, $weight, $value));
}
echo $result = $weighted[array_rand($weighted)];
但是如果我需要在權重上使用小數? (I總是使用的權重之和爲100順便說一句)
例如:
$items = array("value1" => 0.5, "value2" => 99.5);
所以值1將僅示出的時間的0.5%。
是否需要將權重從低到高排序? – Mark
不,只要順序是清楚的。 – Aziuth