我有一个有趣的问题需要解决,我已经给出了 start
和 end
整数值,并且我需要从 start
打印到 end
,然后使用递归从 end
到 start
。
例如 -
start = 2 和 end = 5 那么该方法应打印以下内容,
2,3,4,5,4,3,2
我可以使用代码轻松完成第一部分,
public static void countUp(int start, int end) {
System.out.println(start);
if(start< end){
countUp(start+1, end);
}
}
但是,起始值会在递归中增加,而我没有办法找到减少的位置。如何改进我的代码,只允许使用一种方法?目前,仅打印
2,3,4,5 // I don't care about the commas
最佳答案
试试这个,
public static void countUp(int start, int end) {
System.out.println(start);
if(start< end){
countUp(start+1, end);
System.out.println(start); //backtracking
}
}
关于java - 打印正向排序,然后反向排序,直到开始?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34625196/