C#实现生成所有不重复的组合功能示例
更新时间:2017年12月01日 12:29:28 作者:涛锅
这篇文章主要介绍了C#实现生成所有不重复的组合功能,涉及C#数学运算中组合数运算的相关原理应用操作技巧,需要的朋友可以参考下
本文实例讲述了C#实现生成所有不重复的组合功能。分享给大家供大家参考,具体如下:
给你几个字母,比如(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();
}
运行结果:

更多关于C#相关内容感兴趣的读者可查看本站专题:《C#数据结构与算法教程》、《C#程序设计之线程使用技巧总结》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数组操作技巧总结》及《C#面向对象程序设计入门教程》
希望本文所述对大家C#程序设计有所帮助。
相关文章
c# Task.Wait()与awaiat Task异常处理的区别说明
这篇文章主要介绍了c# Task.Wait()与awaiat Task异常处理的区别说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教2022-06-06
C#通过System.CommandLine快速生成支持命令行的应用程序
这篇文章介绍了C#通过System.CommandLine快速生成支持命令行应用程序的方法,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2022-07-07


最新评论