Java写String的全排列

这是一个不错的利用递归的例子【自己想了老半天才写出来,哎~~~】

public static void main(String[]args) ... {
System.out.println(Arrays.toString(permutation(
"1234")));
}



private static String[]permutation(Stringorginal) ... {
ArrayList
<String>list=newArrayList<String>();
if(orginal.length()==1)...{
returnnewString[]...{orginal};
}
else...{
for(inti=0;i<orginal.length();i++)...{
Strings
=orginal.charAt(i)+"";
Stringresult
="";
StringresultA
=result+s;
StringleftS
=orginal.substring(0,i)+orginal.substring(i+1,orginal.length());
for(Stringelement:permutation(leftS))...{
result
=resultA+element;
list.add(result);
}

}

return(String[])list.toArray(newString[list.size()]);
}

}

你可能感兴趣的:(java)