在网上看了看,一般都用的递归,一个小demo
import java.util.ArrayList;
import java.util.List;
public class Test01 {
public static void main(String[] args) {
String[] arr1 = {"1", "2", "3"};
String[] arr2 = {"a", "b"};
String[] arr3 = {"#", "$"};
List<String[]> list = new ArrayList<>();
list.add(arr1);
list.add(arr2);
list.add(arr3);
test(list, arr1, "");
}
public static void test(List<String[]> list, String[] arr, String str) {
for (int i = 0; i < list.size(); i++) {
if (i == list.indexOf(arr)) {
for (String st : arr) {
st = str + st;
if (i < list.size() - 1) {
test(list, list.get(i + 1), st);
} else if (i == list.size() - 1) {
System.out.println(st);
}
}
}
}
}
}
本文展示了一个使用Java实现的递归算法示例,该算法用于处理字符串数组的组合问题。通过对不同数组进行递归调用,实现了所有可能的字符串组合,并打印输出。

3236

被折叠的 条评论
为什么被折叠?



