您的位置:首页 > 其它

生成所有不重复的组合

2014-06-16 15:54 134 查看
给你几个字母,比如(a,b,c,d,e,f),要求生成所有不重复的组合。

这里重复的定义是这样的,任意两个元素个数相同的组合,如果其包含的元素均两两相等,即视为重复,例如abc和cba就是重复。

嗯,大概意思就是这样,下面给出代码。

static void Main(string[] args)

{

string[] values = { "a", "b", "c", "d" };

string s;

for (int i = 1; i < Math.Pow(2, values.Length) - 1; i++)

{

s = "";

for (int j = 0; j < values.Length; j++)

{

if ((i & (int)Math.Pow(2, j)) == Math.Pow(2, j))

s += values[j];

}

Console.Write("{0} ",s);

}

Console.Read();

}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: