输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,打印出由字符a、b、c所能排列出来的所有字符串abc、acb、bac、bca、cab、cba。
public void permulate(String array){
char[] arrs=array.toCharArray();
permulation(arrs,0);
}
public void permulation(char[] arrs, int begin){
if(begin==arrs.length-1){
System.out.print(new String(arrs)+",");
return;
}
for(int j=begin;j<arrs.length;j++){
char temp=arrs[begin];
arrs[begin]=arrs[j];
arrs[j]=temp;
permulation(arrs,begin+1);
temp=arrs[begin];
arrs[begin]=arrs[j];
arrs[j]=temp;
}
}
没有对最初的输入值判空。