ホームページ >バックエンド開発 >PHPチュートリアル >選択アルゴリズムをお願いします。

選択アルゴリズムをお願いします。

WBOY
WBOYオリジナル
2016-06-23 14:02:121068ブラウズ

これで、50 個の 1 次元配列を含む 2 次元配列ができました

各配列には、この要素 (品質係数 0 ~ 9) があります

選択を決定するために品質が使用されていることを確認しながら、50 個の配列の 1 つを選択する方法この配列の頻度

要件:

50 個の配列すべてが選択される可能性があります


ディスカッション (解決策) に返信

意味はわかりました

$ar = array(1,1,2,3,2,5,6,8,3,5,9,2,3,1,4,5);$t = array();foreach($ar as $k=>$v) $t = array_merge($t, array_fill(0, $v, $k));//$t 中保存的是 $ar 的下标srand(20); //固定的种子可使结果重复$res = array_fill(0, count($ar), 0);for($i=0; $i<10000; $i++) {  shuffle($t); //随机打乱  $res[$t[0]]++;}print_r($res);
10000 回 $ar 各要素が選択される回数
配列
(
[0] => 173
[1] => 168
[2] => 294
[3] => 480
[4] => 364
[5] => ; 892
[6] => 989
[8] => 843
[11] =>
[ 12] => 476
[13] => 194
[14] => 664
[15] => 799
)


はランダム選択で出現する確率が高いという単純な事実ですか?公式はありません、そしてシェンマ公式は必要ありません

これはポイントが与えられます

です。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:正規表現の難問次の記事:正規表現の難問