题目描述:输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串 abc,则打印出由字符 a,b,c 所能排列出来的所有字符串 abc,acb,bac,bca,cab和 cba。
public void Permutation(char[] ch,int start) {
if(ch == null || start < 0) {
return;
}
if(start == ch.length) {
System.out.println(ch);
}else {
for(int i = start;i < ch.length;i++) {
huan(ch,start,i);
Permutation(ch, start + 1);
huan(ch,start,i);
}
}
}
public void huan(char[] ch,int start,int i) {
char temp = ch[start];
ch[start] = ch[i];
ch[i] = temp;
}