算法:如果给定N个不同字符,将这N个字符全排列,最终的结果将会是N!种。如:给定ABC三个不同字符,则结果为:3!=3*2=6种情况
代码实现
import java.util.Scanner;
import java.util.Vector;
public class Main02 {
public static long count=0;
private void fullPermutation(Vector<Character>sourse,Vector<Character>result){
if(sourse.size()==0){
for(int i=0;i<result.size();i++){
System.out.println(result.elementAt(i));
}
count++;
return;
}
for(int i=0;i<sourse.size();i++){
Vector<Character>tsourse=new Vector<Character>();
Vector<Character>tresult=new Vector<Character>();
tresult.add(sourse.elementAt(i));
tsourse.remove(i);
}
}
public static void main(String[] args){
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
Vector<Character>sourse=new Vector<Character>();
Vector<Character>result=new Vector<Character>();
for(int i=0;i<n;i++){
sourse.add((char)('A'+i));
}
new Main02().fullPermutation(sourse, result);
System.out.println(Main02.count);
}
}