gpt4 book ai didi

java - 无法理解字符串置换 Java 代码

转载 作者:行者123 更新时间:2023-12-03 22:59:01 27 4
gpt4 key购买 nike

我有这个工作代码可以不重复地打印字符串排列,但我无法理解它在逻辑上是如何工作的。任何建议都会非常有帮助。

private static void permutation(String input, String sofar) {
if (input.equals("")) {
System.out.println(count + " " + sofar);
count++;
}
for (int i = 0; i < input.length(); i++) {
char c = input.charAt(i);
if (input.indexOf(c, i + 1) != -1)
continue;
permutation(input.substring(0, i) + input.substring(i + 1), sofar+c);
}
}

函数调用:

String input = "ABBCD";
permutation(input, "");

最佳答案

 for (int i = 0; i < input.length(); i++) {

上面的for循环很神奇

输入ABCD

迭代

输入:BCD sofar:A ....递归继续

输入:ACD sofar:B ....

输入:ABD sofar:C ....

输入:ABC 到目前为止:D .....

希望对你有帮助

关于java - 无法理解字符串置换 Java 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28350060/

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