这段代码
var strs = new[] {"A", "B", "C", "D"};
var combinations = CreateCombinations(0, "", strs);
var text = string.Join(", ", combinations);
private List<string> CreateCombinations(int startIndex, string pair, string[] initialArray)
{
var combinations = new List<string>();
for (int i = startIndex; i < initialArray.Length; i++)
{
var value = $"{pair}{initialArray[i]}";
combinations.Add(value);
combinations.AddRange(CreateCombinations(i + 1, value, initialArray));
}
return combinations;
}
文本变量将包含
A, AB, ABC, ABCD, ABD, AC, ACD, AD, B, BC, BCD, BD, C, CD, D