重複のない乱数の生成
繰り返しのない一意の数値を生成する擬似乱数生成器を追求して、次のようなソリューションを掘り下げます。シャッフルまたはチェックというリソースを大量に消費する方法を回避します。
リニア フィードバック シフト レジスタ (LFSR)
LFSR は、ハードウェアに実装されると、非反復シーケンスを生成するためのソフトウェア ベースの代替手段を提供します。シフト レジスタを使用し、選択されたビットを戦略的に XOR 演算して入力に戻すことにより、LFSR はレジスタ サイズと同じ長さのシーケンスを生成します。たとえば、16 ビットの LFSR は、65,535 個の一意の数値のシーケンスを生成できます。
LFSR の構築は、最適なシーケンスの生成を保証するために、「最大長」として知られる厳格なルールに準拠しています。これらのガイドラインは、結果として得られるシーケンスが統計的ランダム性を備え、恥ずかしいほど短いパターンや繰り返しのパターンを回避することを保証します。
以上が線形フィードバック シフト レジスタはどのようにして反復せずに一意の乱数を生成できるのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。