6 つの乱数を含む配列を生成する必要があり、これらの乱数を繰り返すことはできません。 (配列には複数の乱数が含まれており、各乱数は 6 桁であり、配列内の乱数は繰り返されません)
次の 2 つのコードを参照して、その 2 つを組み合わせることができます。
これは再帰によって実行できます。デモンストレーションの便宜上、10 以内の非繰り返しの正の整数乱数のセットを生成するように変更しました。 依存する主なメソッドは、配列内の特定の値のインデックスを見つけるために使用される、indexOf() メソッドです。配列内に値が見つからない場合は、-1 が返されます。 コードは次のとおりです:
時間は繰り返されず、タイムスタンプを使用して乱数を生成することも繰り返されません。
そして、ある程度、この世界には絶対に繰り返さない乱数は存在せず、生成された乱数をすべて保存し、生成時に比較したとしても、それらがすでに存在していることが判明した場合でも、すべての組み合わせが無限ではありません。すべての組み合わせが試行されると、最終的に新しい乱数が生成され、無限ループが形成されます。 しかも、それはわずか6桁で、組み合わせは合計472,392通りしかありません。
シンプルで使いやすい方法を紹介します。これが繰り返されないことを保証するものではありません。同じことが繰り返される場合は、宝くじを購入することを忘れないでください。 Math.random().toString(36).slice(2,8)
Math.random().toString(36).slice(2,8)
非反復乱数シーケンス生成アルゴリズム コードとコメントを使用して実装すると、非常に賢い記事を見つけました。 リーリー
)
毎回乱数を生成するループを作成し、それをセットにスローします。セットが十分に長い場合は、配列に変換されて返されます
配列内の必要な数が小さい場合は、配列メソッドを使用してそれを決定できます
これは再帰によって実行できます。デモンストレーションの便宜上、10 以内の非繰り返しの正の整数乱数のセットを生成するように変更しました。
リーリー依存する主なメソッドは、配列内の特定の値のインデックスを見つけるために使用される、indexOf() メソッドです。配列内に値が見つからない場合は、-1 が返されます。
コードは次のとおりです:
時間は繰り返されず、タイムスタンプを使用して乱数を生成することも繰り返されません。
リーリーそして、ある程度、この世界には絶対に繰り返さない乱数は存在せず、生成された乱数をすべて保存し、生成時に比較したとしても、それらがすでに存在していることが判明した場合でも、すべての組み合わせが無限ではありません。すべての組み合わせが試行されると、最終的に新しい乱数が生成され、無限ループが形成されます。 しかも、それはわずか6桁で、組み合わせは合計472,392通りしかありません。
シンプルで使いやすい方法を紹介します。これが繰り返されないことを保証するものではありません。同じことが繰り返される場合は、宝くじを購入することを忘れないでください。
Math.random().toString(36).slice(2,8)
非反復乱数シーケンス生成アルゴリズム
JS がうまく書かれていない (エスケープコードとコメントを使用して実装すると、非常に賢い記事を見つけました。 リーリー
)
毎回乱数を生成するループを作成し、それをセットにスローします。セットが十分に長い場合は、配列に変換されて返されます
。配列内の必要な数が小さい場合は、配列メソッドを使用してそれを決定できます
リーリー