ホームページ >バックエンド開発 >PHPチュートリアル >10 個の数値ランダム分布アルゴリズム

10 個の数値ランダム分布アルゴリズム

WBOY
WBOYオリジナル
2016-09-21 14:13:132260ブラウズ

10 個の数字がランダムに 10 個の位置に分割されます。このようなランダムなアルゴリズムを記述する方法。
私のアイデア: 乱数を生成し、10 + 乱数を法として 10 個の位置を取得します。しかし、十分にランダムな感じがしません。何か良いアルゴリズムはありますか?
例:
1 2 3 4 5 6 7 8 9 10
2 1 4 3 9 7 8 6 5 10
。 。 。
(ランダムに配置)

追加:
メソッドの提供:
10個の数値の線形テーブル、ランダム(10)=5、ノード5の削除
9個の数値の線形テーブル、ランダム(9)=2、ノード2の削除
。 。 。 。
最後のランダムシーケンス 5,2。 。 。 。 。
これはかなりランダムに感じられます。

返信内容:

10 個の数字がランダムに 10 個の位置に分割されます。このようなランダムなアルゴリズムを記述する方法。
私のアイデア: 乱数を生成し、10 + 乱数を法として 10 個の位置を取得します。しかし、十分にランダムな感じがしません。何か良いアルゴリズムはありますか?
例:
1 2 3 4 5 6 7 8 9 10
2 1 4 3 9 7 8 6 5 10
。 。 。
(ランダムに配置)

追加:
メソッドの提供:
10個の数値の線形テーブル、ランダム(10)=5、ノード5の削除
9個の数値の線形テーブル、ランダム(9)=2、ノード2の削除
。 。 。 。
最後のランダムシーケンス 5,2。 。 。 。 。
これはかなりランダムに感じられます。

疑似コード:

リーリー

コンピューターが真の乱数を生成する方法はありません...生成された数値をさまざまな間隔で均等に分散させることを試みることしかできません..

ランダム アルゴリズムの問​​題ではなく、サンプルが小さすぎるため、100 個の乱数を試してみると、非常にランダムに見えます。

1、3、2、4、5、6、7、8、10、9 はランダムに選択されますが、それでも十分にランダムではないと感じます

1 から 10 までの 10 個の数字を 10 桁にハッシュしたいとします。ハッシュするだけです。

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