Janakan semua kombinasi yang mungkin daripada senarai nilai bersaiz runtime
Dalam senario pengaturcaraan biasa, anda akan menghadapi situasi di mana anda perlu menjana semua kemungkinan gabungan elemen daripada senarai integer yang diberikan. Untuk mencapai ini dalam C#, ikuti langkah berikut:
List<int>
generik untuk menampung sebarang bilangan elemen pada masa jalan. Berikut ialah kod sampel yang melaksanakan algoritma ini:
<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>
Menggunakan algoritma ini, anda boleh menjana semua kemungkinan gabungan elemen dalam senarai dengan cekap, tanpa mengira saiznya.
Atas ialah kandungan terperinci Bagaimana untuk Menjana Semua Kemungkinan Gabungan daripada Senarai Bersaiz Runtime dalam C#?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!