求:给定一段字符串,求输出所有排序顺序.JAVA代码实现!!!!!!!
解决方案 »
- 多线程更新Jtable时报错,求助
- 有关JAVA绘图简单问题
- 关于ActiveX与Java applet的cab问题,10年以上老程序员请进(也许是VJ相关的)
- 谁来帮我讲解一下这道题~~~谢谢
- Exception in thread "AWT-EventQueue-0" java.util.NoSuchElementException
- 为什么动画显示不出来
- 菜鸟的数据库访问问题,各位大哥帮帮忙,急!!(在线等)
- 在struts中怎么在一个页面提交的到另一个页面
- 在java中有没有像VB中的 msgbox(),或 VJ++中的 MessageBox??
- Javase新人在线求解答
- sun.net.ftp.FtpClient问题(2个问题)
- 在Java中怎么使用断言
String str2="acvd";
String strCon = str1.concat(str2);
char strArray [] = strCon.toCharArray();
Arrays.sort(strArray);
for (char ch : strArray) {
System.out.println(ch);
}
那我要求输出它的所有排列顺序:abc,acb,bac,bca,cab ,cba
要求用java代码实现这一算法
permutation("abc");
}
public static void permutation(String input) {
if (input == null)
throw new IllegalArgumentException("input is null");
permutation0(input.toCharArray(), 0, input.length());
}
private static void permutation0(char[] inputs, int m, int n) {
int i;
char t;
if (m < n - 1) {
for (i = m; i < n; i++) {
t = inputs[m];
inputs[m] = inputs[i];
inputs[i] = t;
permutation0(inputs, m + 1, n);
t = inputs[m];
inputs[m] = inputs[i];
inputs[i] = t;
}
} else {
String value = "";
for (Object input : inputs) {
value += input;
}
System.out.println(value);
}
}