C言語なら俺に聞け(入門篇) Part 29
at TECH
459:デフォルトの名無しさん
08/06/07 13:53:49
>>456
マジレスすると、センスないのはお前だ。それは偏る。
<Proof>
N=3とすると、置換の可能性は3^2=27。
一方、3つの要素の並べ方は3!=6。
27/6は整数ではない。故に、偏る。q.e.d.
実際に列[0,1,2]に対して、6万回の試行をしてみると、
[0,1,2]:9063
[0,2,1]:10843
[1,0,2]:11236
[1,2,0]:11121
[2,0,1]:8719
[2,1,0]:9018
この程度のばらつきが出る。
数学的に考えれば、9000前後の数字が出ている列は、
それぞれ並べ替え方27のうち4を占めていて、
11000前後のはそれぞれ27のうち5を占めている。
正確にシャッフルしたければ、並べ替え方が6!のKnuthシャッフルを使うべし。
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
5028日前に更新/203 KB
担当:undef