gpt4 book ai didi

java - 递归字符串函数 (Java)

转载 作者:行者123 更新时间:2023-12-02 00:51:37 24 4
gpt4 key购买 nike

我正在尝试设计一个基本上执行以下操作的函数:

字符串 s = "BLAH";

将以下内容存储到数组中:废话拉呸BLH布拉BL巴乙肝啊等

所以基本上我所做的就是一次减去其中的每个字母。然后一次减去两个字母的组合,直到剩下 2 个字符。将每一代存储在一个数组中。

希望这是有道理的,

jack

最佳答案

你是怎么得到“al”的?这些也混在一起了吗?

我将创建一个 HashSet 来保存所有排列并将其传递给递归方法。

void foo(HastSet<String> set, String string) {
if (string.length < 2) // base case
return
else {
// add the string to the hashset
set.add(string);

// go through each character
for (int i = 0; i < string.length; i++) {
String newString = s.substring(0,i)+s.substring(i+1);
foo(set, newString);
}
}
}

如果你关心独特性的话。如果没有,您可以使用 vector 。无论哪种方式,您都可以使用 toArray 来取回数组。

关于java - 递归字符串函数 (Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2777446/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com