读书人

求数组排列组合算法,该如何解决

发布时间: 2012-03-25 20:55:16 作者: rapoo

求数组排列组合算法
数组
{A,B,C,D}
{a,b,c,d}

求数组的所有排列,得到的结果应该是:
{a,B,C,D}
{A,b,C,D}
{A,B,c,D}
{A,B,C,d}
{a,b,C,D}
{a,B,c,D}
{a,B,C,d}
{a,b,c,D}
.......
.......
........


数组等长。

[解决办法]

C# code
string[] source1 = new string[] { "A", "B", "C", "D" };string[] source2 = new string[] { "1", "2", "3", "4" };List<string[]> list = new List<string[]>();for (int i = 0; i < 16; i++){    string[] s = source1.ToArray();    for (int j = 0; j < 4; j++)    {        if (i & (2 << j - 1) == i) s[j] = source2[j];    }    list.Add(s);} 

读书人网 >C#

热点推荐