java中有全排列函数吗
时间: 2023-10-20 19:07:44 浏览: 89
Java中没有内置的全排列函数,需要自己实现。可以使用递归算法来实现全排列。具体实现可以参考以下代码:
```java
public class Permutation {
public static void main(String[] args) {
String str = "abcd";
permutation(str.toCharArray(), 0, str.length() - 1);
}
public static void permutation(char[] ch, int start, int end) {
if (start == end) {
System.out.println(new String(ch));
} else {
for (int i = start; i <= end; i++) {
swap(ch, i, start);
permutation(ch, start + 1, end);
swap(ch, i, start);
}
}
}
public static void swap(char[] ch, int i, int j) {
char temp = ch[i];
ch[i] = ch[j];
ch[j] = temp;
}
}
```
这段代码实现了一个字符串的全排列,输出结果如下:
```
abcd
abdc
acbd
acdb
adcb
adbc
bacd
badc
bcad
bcda
bdca
bdac
cbad
cbda
cabd
cadb
cdab
cdba
dbca
dbac
dcba
dcab
dacb
dabc
```
阅读全文