任何人都可以解釋這個遞歸程序如何工作。我試着運行這個程序,我得到了輸出:但我不理解程序的流程。遞歸如何工作?
mycode的:
public class NewClass {
public static void main(String args[]) {
System.out.println("i am caller" + new NewClass().mystery("DELIVER"));
}
public String mystery(String s) {
System.out.println("sssss" + s);
String s1 = s.substring(0, 1);
String s2 = s.substring(1, s.length() - 1);
String s3 = s.substring(s.length() - 1);
if (s.length() <= 3) {
return s3 + s2 + s1;
} else {
return s1 + mystery(s2) + s3;
}
}
}
得到一張紙和筆,在每次迭代中寫回值 – Baby
調試器是你的朋友。 – Bathsheba
System.out基本上是您的建議的數字版本。具有實際的價值似乎沒有幫助。 – Gimby