patternjavaCritical
Generating all permutations of a given string
Viewed 0 times
generatinggivenstringallpermutations
Problem
What is an elegant way to find all the permutations of a string. E.g. permutation for
ba, would be ba and ab, but what about longer string such as abcdefgh? Is there any Java implementation example?Solution
public static void permutation(String str) {
permutation("", str);
}
private static void permutation(String prefix, String str) {
int n = str.length();
if (n == 0) System.out.println(prefix);
else {
for (int i = 0; i < n; i++)
permutation(prefix + str.charAt(i), str.substring(0, i) + str.substring(i+1, n));
}
}(via Introduction to Programming in Java)
Code Snippets
public static void permutation(String str) {
permutation("", str);
}
private static void permutation(String prefix, String str) {
int n = str.length();
if (n == 0) System.out.println(prefix);
else {
for (int i = 0; i < n; i++)
permutation(prefix + str.charAt(i), str.substring(0, i) + str.substring(i+1, n));
}
}Context
Stack Overflow Q#4240080, score: 654
Revisions (0)
No revisions yet.