输入一个字符串,在java中如何将字符串中的字母无重复的进行排序呢(字符串长度不固定)?

2025-03-13 14:21:19
推荐回答(3个)
回答1:

public class StrTest {

public static void main(String[] args) {

String s = "abc";
char[] c = s.toCharArray();

for (int i = 0; i < c.length; i++) {
for (int j = 0; j < c.length - 1; j++) {
char ch = c[j+1];
c[j+1] = c[j];
c[j] = ch;
System.out.println(new String(c));
}
}
}
}

回答2:

color4you 的错误 如果4位那么循环执行4*3=12 只有12个结果但实际上又4*3*2*1=24个结果

回答3:

public static void main(String[] args) throws Exception {

printString("", "abc");
}

private static void printString(String s1, String s2) {
if (s2.length() == 1) {
System.out.println(s1 + s2);
} else {
for (int i = 0; i < s2.length(); i++) {
printString(s1 + s2.substring(i, i + 1), s2.substring(0, i)
+ s2.substring(i + 1));
}
}
}