Jerry__J
Jerry__J
2016-04-22 10:30
采纳率: 83.3%
浏览 1.6k
已采纳

对java中递归问题的输出不理解,求大神解答!谢谢

对于这一段代码我能够理解,压栈然后出栈就是6,5,4

 package recursion;

public class testRecursion {
    public static void main(String[] args) {
        int num=3;
        recursion(num);
    }
    private static void recursion(int n){
        n++;
        if(n<7){
            recursion(n);
            System.out.println(n);
        }
    }
}

但是对这段代码的输出很不理解

 package recursion;

public class testRecursion {
    public static void main(String[] args) {
        int num=3;
        recursion(num);
    }
    private static void recursion(int n){
        n=n+1;
        if(n<7){
            recursion(n);
            recursion(n);
            System.out.println(n);
        }
    }
}

输出是:6 6 5 6 6 5 4

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • binggouxsm
    binggouxsm 2016-04-22 12:04
    已采纳

    图片说明

    就是一个深度遍历的二叉树

    点赞 评论
  • whoSaidNo
    whoSaidNo 2016-04-22 12:14

    图片说明

    第一个rescurison(4)输出6 ,6, 5,
    第二个也输出 6 , 6,5
    最后输出6

    点赞 评论

相关推荐