放回
static ArrayList<String> strings = new ArrayList<>();
public static void values(String[] words, String beforeString, int index) {
//最后一项
if (index == words.length - 1) {
for (String word : words) {
String newString = beforeString + word;
strings.add(newString);
}
} else for (String word : words) {
values(words, beforeString + word, index + 1);
}
}
不放回
static ArrayList<String> strings = new ArrayList<>();
public static void values(String[] words, String beforeString, int index) {
//最后一项
if (index == words.length - 1) {
for (String word : words) {
if (!beforeString.contains(word)) {
String newString = beforeString + word;
strings.add(newString);
}
}
} else for (String word : words) {
if (!beforeString.contains(word)) {
values(words, beforeString + word, index + 1);
}
}
}