求教一个二维字符串数组的拼接问题
遇到了一个二维字符串数组遍历拼接的问题,怎么都拼接不对,求高手指教算法。
有一个二维的数组,是这样的,我是用list的形式存储的,list[i][j]
1,2
3,4
5,6
数组的行数和列数不一定,有可能比我写的例子多,有可能少,现在要求拼接出的结果是:
1空格3空格5
1空格3空格6
1空格4空格5
1空格4空格6
2空格3空格5
2空格3空格6
2空格4空格5
2空格4空格6
最后的结果就是要这样的一个一维数组的形式,最好也是存储在list里面。
希望高手给出循环拼接的代码,万分感谢 算法 循环遍历
[解决办法]
你这是排列组合吧,找找排列组合算法,或者用卡迪尔乘积
public static void ShowResult()
{
string str = "X,P
[解决办法]
黑色,红色
[解决办法]
T,C";
string[] temp1 = str.Split('
[解决办法]
');
List<string> list = new List<string>();
foreach (string s in temp1)
{
if (list.Count == 0)
list.AddRange(s.Split(','));
else
list = JoinPart(list, s.Split(','));
}
foreach (string s in list)
Console.WriteLine(s);
}
public static List<string> JoinPart(List<string> part1, string[] part2)
{
List<string> result = new List<string>();
foreach (string str1 in part1)
{
foreach (string str2 in part2)
{
result.Add(str1 + " " + str2);
}
}
return result;
}