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

publicstaticvoidmain(String[]args)...{
System.out.println(Arrays.toString(permutation("1234")));
}


privatestaticString[]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程序示例。通过递归地选择每个字符并进行子串处理来生成所有可能的组合,最终返回一个包含所有排列结果的数组。
2020

被折叠的 条评论
为什么被折叠?



