<list>
フィッシャー - シャッフルアルゴリズムは、一般的なリストの効率的な破壊の方法です。アルゴリズムは、拡張方法
の使用方法:
IList
このメソッドを任意の
private static Random rng = new Random(); public static void Shuffle<T>(this IList<T> list) { int n = list.Count; while (n > 1) { n--; int k = rng.Next(n + 1); T value = list[k]; list[k] = list[n]; list[n] = value; } }
<虽然>クラスは便利ですが、そのランダム性は不十分な場合があります。ランダム性を向上させるには、:でランダム数ジェネレーターを使用することをお勧めします。
<程>スレッドセキュリティの改善IList
List<Product> products = GetProducts(); products.Shuffle();
これにより、各スレッドが独自の乱数ジェネレーターを使用して競合を回避することが保証されます。
これらの方法により、ジェネリックのジェネリックリストの要素を効果的に並べ替えて、真にランダムな宝くじ宝くじアプリケーションを作成できます。 System.Random
以上が宝くじアプリケーションのC#で一般的なリストを効果的にランダム化するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。