最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
Algorithm--全排列(c#)
时间:2008-04-26 编辑:简简单单 来源:一聚教程网
出来混的迟早一天要还的,这句话出来工作才真正体会到... 大学里没好好学,许多东西现在都要重新捡起来。按照一个完整的.net自学计划,现在也算走到算法这个学习阶段了。有些体会想share下~ 这次想说的是全排列。“比如a,b和c的排列方式有:abc, acb, bac, bca, cab 和cba。n个元素的排列方式共有n!种。”书上用的是递归方法,由于用的是C++语言,感觉有点陌生~一个激灵下想出个非递归方法,用C#写的,希望能做参考,谢谢
class Perm
...{
private List<string> permPreList;
private List<string> permedList;
public Perm(List<string> list)
...{
permPreList = list;
permedList = new List<string>();
}
public List<string> PermedList
...{
get
...{
return permedList;
}
}
public void GetPerm()
...{
for (int i = 0; i < permPreList.Count; i++)
...{
string first = permPreList[i];
for (int j = 0; j < permPreList.Count; j++)
...{
if (j != i)
...{
string second = permPreList[j];
for (int k = 0; k < permPreList.Count; k++)
...{
if (k != j && k != i)
...{
string third = permPreList[k];
permedList.Add(first + second + third);
}
}
}
}
}
}
}
多扔砖头撒~.~
<
相关文章
- C#复制数组的两种方式及效率比较解读 10-24
- C语言中atoi函数模拟实现介绍 10-18
- C#中ArrayList 类的使用介绍 09-22
- C#非托管泄漏中HEAP_ENTRY的Size对不上解析问题解决方法 09-22
- C#序列化与反序列化集合对象并进行版本控制的方法 09-19
- C#枚举高级战术代码解析 10-13
热门栏目
-
php教程
php入门 php安全 php安装 php常用代码 php高级应用 -
asp.net教程
基础入门 .Net开发 C语言 VB.Net语言 WebService -
手机开发
安卓教程 ios7教程 Windows Phone Windows Mobile 手机常见问题 -
css教程
CSS入门 常用代码 经典案例 样式布局 高级应用 -
网页制作
设计基础 Dreamweaver Frontpage js教程 XNL/XSLT -
办公数码
word excel powerpoint 金山WPS 电脑新手 -
jsp教程
Application与Applet J2EE/EJB/服务器 J2ME开发 Java基础 Java技巧及代码