◆ わからない問題はここに書いてね 257 ◆at MATH
◆ わからない問題はここに書いてね 257 ◆ - 暇つぶし2ch55:132人目の素数さん
09/05/11 01:02:00
実は、PHPのスクリプトを考えていたのですが、
どうにもわからず、
これはむしろ数学的スキルを要求されるのでは、とおもい、質問させてください
====

$arrN[0] = $arrN[1] = $arrN[2] = $arrN[3] = $arrN[4] = array("2","3","4,"5","7","8","9", "a","f","h", "w");

がありまして。

「$arrN[0]からランダムに選んだ要素」.「$arrN[1]から…」.「$arrN[2]から…」.「$arrN[3]から…」.「$arrN[4]から…」.「$arrN[5]から…」
なる文字列を配列$arrPにどんどん入れていきたいです。
で、
$arrP のどの要素も重複を許可しないものとしたいです。

すると、$arrPの要素の個数は、($arrN[0]の要素の個数) ^ 5 = 161051となるわけです。

ですが、毎回(161051回)、5回ランダムに選んで、それが、すでに選んだ「$arrPの要素のどれか」と一致する場合は、再度繰り返す・・・ということをやっていると、
とてつもなく時間がかかってしまいます。

なんとかして、短時間で、これを実現する方法はないでしょうか?

なお、
この問題をもっと簡単にすると、
「0,1,2,3,.....9998,9999」なる整数の集まりに対して、これを、
ランダムに短時間で順番をシャッフルする・・・というようなことができれば、
希望のこともできそうなのですが。。。(たぶん・・・)

いいアイディアないでしょうか?

よろしくお願いします。


次ページ
続きを表示
1を表示
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch