public class TestSort {
String[] list;
StringBuffer sb;
int len, start;
TestSort(String in) {
len = Integer.parseInt(in);
list = new String[len];
for (int i = 0; i < len; i++) list[i] = String.valueOf(i + 1);
permutation(0,len-1);
}
void swap(int c1, int c2) {
String temp = list[c1];
list[c1] = list[c2];
list[c2] = temp;
}
void permutation(int m,int n) {
if (m==n) {
sb = new StringBuffer();
for (int i = 0; i < len; i++) sb.append(list[i]);
sb.append(" ");
System.out.print(sb);
} else {
for (int i = m; i<=n; i++) {
swap(m, i);//交换
permutation(m+1,n);
swap(m,i);//还原
}
}
}
public static void main(String args[]) {
new TestSort("3");
}
}
分享到:
相关推荐
使用递归实现的全排列算法,输出所有的全排列。 各种主流程序设计语言实现!
全排列算法 实例 一种实现了n个数全排列的算法 全排列算法 实例 一种实现了n个数全排列的算法
全排列算法
自己写的基于字符的全排列算法,代码简洁,高效,7位数的全排列都是秒排!用到了广度优先排列,深度优先搜索和几个递归,唯一没完成的是退出时释放内存,呵呵,破解密码时超有用的哟,,
全排列算法: 比如字符串abc,全排列结果为abc,acb,bac,bca,cba,cab。
利用中介数实现全排列算法,采用java实现。
全排列算法
JAVA递归实现全排列算法,含实现源代码,如a、b、c、d的全排列为: abcd abdc acbd acdb adcb adbc bacd badc bcad bcda bdca bdac cbad cbda cabd cadb cdab cdba dbca dbac dcba dcab dacb dabc
基于全排列算法的完整代码解析,可供理解搜索的技巧,有很高的使用价值
实现全排列组合的算法,供大家学习与参考。在需要对排列组合做差异分析的时候可以直接使用。例如:几个正则式的不同排列组合对匹配效果的影响
全排列算法详细解析(完整版)
主要介绍了Java实现字符数组全排列的方法,涉及Java针对字符数组的遍历及排序算法的实现技巧,需要的朋友可以参考下
C4.5算法 java实现 详细 界面
祖冲之密码算法Java实现 有祖冲之密码的文档说明
K-Means聚类算法java实现.pdf K-Means聚类算法java实现.pdf K-Means聚类算法java实现.pdf K-Means聚类算法java实现.pdf K-Means聚类算法java实现.pdf K-Means聚类算法java实现.pdf K-Means聚类算法java实现.pdf K-...
java版的DBSCAN聚类算法实现,是典型的算法思路实现,遍历未访问的所有点,如果是核心点,就新建一个簇,然后遍历其邻域内的所有点集A,不断扩展,如果簇内的点时核心点,就将其邻域所有点纳入点集A,并从点集移除已...
经典算法 java实现 部分代码 // 系统拥有的初始资源数 public static int AVAILABLE[] = { 10, 5, 7 }; // 系统已给每个进程分配的资源数 public static int ALLOCATION[][] = { { 0, 0, 0 }, { 0, 0, 0 }, {...
Ngnix权重选择算法Java实现,如果对Ngnix有兴趣的话可以下载下来看一下
java实现的几个推荐算法:slopeone SVD,RSVD,ItemNeighborSVD 内有readme,相关内容在blog.csdn.net/lgnlgn
java实现弗洛伊德算法 经典java实现弗洛伊德算法 经典java实现弗洛伊德算法 经典java实现弗洛伊德算法 经典java实现弗洛伊德算法 经典