日期:2014-05-20  浏览次数:20660 次

Java API有显示n个数的排列 组合的函数吗!
Java   API有显示n个数的排列   组合的函数吗!

------解决方案--------------------
你说有没有,语言提供的是最具通用性的框架!
看一下这个,有类似之处:
http://community.csdn.net/Expert/topic/5612/5612594.xml?temp=.740597
------解决方案--------------------
这是我以前用C语言写的全排列

#include <iostream>

using namespace std;

void print(char* array,int m){
for(int i=0;i <m;i++){
cout < <*(array+i);
}
cout < <endl;
}

void exchange(char* a,char* b){
char temp;
temp=*a;
*a=*b;
*b=temp;
}

void permutation(char* array,int n,int m){
if(n==m){
print(array,m);
}
else{
for(int i=n;i <m;i++){
exchange(array+n,array+i);
permutation(array,n+1,m);
exchange(array+n,array+i);
}
}
}

void main(){
char test[]={ '1 ', '2 ', '3 ', '4 ', '5 '};
permutation(test,0,sizeof(test));
}
------解决方案--------------------
有数学公式利用阶乘可以算