C#实现组合排列的方法
发布时间:2020-12-15 06:16:27 所属栏目:百科 来源:网络整理
导读:C#实现组合排列的方法 最近在做数据分析系统,里面涉及到组合排列的问题,查找了很多的资料,但是感觉很多资料都是比较零散的,达不到项目需求。 后来经过一段的时间的探索,终于实现了组合排列的功能。下面我就来简单说说吧。 需求描述: 要实现的功能就是字
C#实现组合排列的方法 最近在做数据分析系统,里面涉及到组合排列的问题,查找了很多的资料,但是感觉很多资料都是比较零散的,达不到项目需求。 后来经过一段的时间的探索,终于实现了组合排列的功能。下面我就来简单说说吧。 需求描述: 要实现的功能就是字符或数字的组合排列。例如:ab 的所有组合为:ab,ba ; ab的所有不重复排列为:ab。 其实这也是彩票中常说的直选和组选。效果图如下:
功能实现 这里就不多说了,直接贴上实现代码吧。 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.运行效果 结束语 至此,直选和组选功能就实现了。附上demo源码供参考。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |