我有一个包含以下项目的列表:
A
B
C
D
我需要配对每个项目,所以我得到这样的东西:
A, B
A, C
A, D
B, C
B, D
C, D
我想以这种格式获取我的列表:List<string[]> itemSet;
我如何创建一个循环浏览项目的函数? 通过循环,我的意思是我可以有3个项目,而不是像我在我的exmaple中显示的两个项目。
更新:另一个例子:
AB
AD
BC
BD
CD
转到:
ABD, BCD
例如,我们可以使用新值AB
和AD
。
AB
+ AD
= ABD
,因为我们的第一项已经有A
。
答案 0 :(得分:0)
string[] letters = { "d", "c", "a", "b" }; // Use LINQ query syntax to sort the array alphabetically. var sorted = from letter in letters
orderby letter
select letter; // Loop with the foreach keyword. foreach (string value in sorted) {
Console.WriteLine(value); }
---------------
Output
a
b
c
d
希望帮助你
答案 1 :(得分:0)
string[] array = {"A", "B", "C", "D"};
var pairs = new List<string[]>();
for (int i = 0; i < array.Length; i++)
{
for (int j = i + 1; j < array.Length; j++)
{
pairs.Add(new []
{
array[i],
new string(array[j].ToCharArray().Except(array[i].ToCharArray()).ToArray<char>())
});
}
}
/*output of pairs
A, B
A, C
A, D
B, C
B, D
C, D
*/