手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#实现组合排列的方法
C#实现组合排列的方法
摘要:C#实现组合排列的方法最近在做数据分析系统,里面涉及到组合排列的问题,查找了很多的资料,但是感觉很多资料都是比较零散的,达不到项目需求。后来...

C#实现组合排列的方法

最近在做数据分析系统,里面涉及到组合排列的问题,查找了很多的资料,但是感觉很多资料都是比较零散的,达不到项目需求。

后来经过一段的时间的探索,终于实现了组合排列的功能。下面我就来简单说说吧。

需求描述:

要实现的功能就是字符或数字的组合排列。例如:ab 的所有组合为:ab,ba ; ab的所有不重复排列为:ab。

其实这也是彩票中常说的直选和组选。效果图如下:

C#实现组合排列的方法1

功能实现

这里就不多说了,直接贴上实现代码吧。

1.窗体界面

窗体界面设计入上面的截图。

2.添加引用在项目中,添加引用——>AoTu.ZhuHe.dll

3.窗体类代码

public partial class FrmDemo : Form { public FrmDemo() { InitializeComponent(); } private void FrmDemo_Load( sender, EventArgs e) { string svn = "0b1de737-cea695ab-fc505423-bdd5f3db "; bool ret = ZhuHeNum.Initia(svn); if (!ret) MessageBox.Show("注册失败!"); } private void btnNot2_Click( sender, EventArgs e) { string str = txtnot.Text; List<string> list = ZhuHeNum.NumNoRepeAssembly(str, 2); if (list == null) { MessageBox.Show("注册失败!"); return; } list.Sort(); StringBuilder sbBuilder = new StringBuilder(); foreach (string s in list) { sbBuilder.Append(s); sbBuilder.Append("rn"); } txtShow.Clear(); txtShow.Text = sbBuilder.ToString(); lbCount.Text = list.Count.ToString(); } private void btnNot3_Click( sender, EventArgs e) { string str = txtnot.Text; List<string> list = ZhuHeNum.NumNoRepeAssembly(str, 3); if (list == null) { MessageBox.Show("注册失败!"); return; } list.Sort(); StringBuilder sbBuilder = new StringBuilder(); foreach (string s in list) { sbBuilder.Append(s); sbBuilder.Append("rn"); } txtShow.Clear(); txtShow.Text = sbBuilder.ToString(); lbCount.Text = list.Count.ToString(); } private void btnAll2_Click( sender, EventArgs e) { string str = txtAll.Text; List<string> list = ZhuHeNum.NumGroupAssembly(str, 2); if (list == null) { MessageBox.Show("注册失败!"); return; } list.Sort(); StringBuilder sbBuilder = new StringBuilder(); foreach (string s in list) { sbBuilder.Append(s); sbBuilder.Append("rn"); } txtShow.Clear(); txtShow.Text = sbBuilder.ToString(); lbCount.Text = list.Count.ToString(); } private void btnAll3_Click( sender, EventArgs e) { string str = txtAll.Text; List<string> list = ZhuHeNum.NumGroupAssembly(str, 3); if (list == null) { MessageBox.Show("注册失败!"); return; } list.Sort(); StringBuilder sbBuilder = new StringBuilder(); foreach (string s in list) { sbBuilder.Append(s); sbBuilder.Append("rn"); } txtShow.Clear(); txtShow.Text = sbBuilder.ToString(); lbCount.Text = list.Count.ToString(); } }

4.运行效果

C#实现组合排列的方法2

结束语

至此,直选和组选功能就实现了。附上demo源码供参考。

【C#实现组合排列的方法】相关文章:

.net C# 实现任意List的笛卡尔乘积算法代码

C#连接MySql数据库的方法

C#操作注册表的方法

c#生成缩略图的实现方法

C#生成sitemap站点地图的方法

深入理解C#实现快捷键(系统热键)响应的方法

C#中控制远程计算机的服务的方法

C# 运用params修饰符来实现变长参数传递的方法

C#连接db2数据库的实现方法

C#调用Java类的实现方法

精品推荐
分类导航