我想知道如何以递归方式创建给定字符串的所有排列组合。可以说String a = "abcdefghijklmnopqrstxyz";
。在java中递归生成一个字符串的所有排列
我想使用递归以产生长度为5(例如)从a
串,
含义:
- AAAAA
- AAAAB
- aaaba
- aaaca
- zabfg
在此先感谢。
我想知道如何以递归方式创建给定字符串的所有排列组合。可以说String a = "abcdefghijklmnopqrstxyz";
。在java中递归生成一个字符串的所有排列
我想使用递归以产生长度为5(例如)从a
串,
含义:
在此先感谢。
首先,只需使用HashMap左右存储所有唯一字符,然后将它们转移到List,我们将调用字符,以便于使用。
你的递归方法建立在一个字符串上。当字符串长度达到5时,你就完成了,并且你想保留它。您可以返回字符串或将其存储在全局列表中。
在这种情况下,假设您的列表被称为排列。
void generatePermutation(String current) {
if (current.length == 5) {
permutations.add(current);
} else {
for (int i = 0; i < chars.size(); i++) {
generatePermutation(current + chars.get(i));
}
}
}
好的,你有问题吗? –
这是一个问题......如何仅使用递归创建所描述的排列。 – Efi
随着解决方案,只打印出长度为5的结果 –