実行時サイズの値のリストから可能なすべての組み合わせを生成します
典型的なプログラミング シナリオでは、指定された整数のリストから要素の可能なすべての組み合わせを生成する必要がある状況に遭遇します。 C# でこれを実現するには、次の手順に従います:
List<int>
を使用して、実行時に任意の数の要素に対応することもできます。 以下は、このアルゴリズムを実装するサンプル コードです:
<code class="language-csharp">using System; using System.Collections.Generic; public class CombinationGenerator { public static void Main(string[] args) { GenerateCombinations(new List<int> { 1, 2, 3 }); } public static void GenerateCombinations(List<int> list) { int count = (int)Math.Pow(2, list.Count); for (int i = 1; i < count; i++) { List<int> combination = new List<int>(); string binary = Convert.ToString(i, 2).PadLeft(list.Count, '0'); for (int j = 0; j < binary.Length; j++) { if (binary[j] == '1') { combination.Add(list[j]); } } Console.WriteLine(string.Join(", ", combination)); } } }</code>
このアルゴリズムを使用すると、サイズに関係なく、リスト内の要素の可能なすべての組み合わせを効率的に生成できます。
以上がC# でランタイムサイズのリストから可能なすべての組み合わせを生成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。