傻子都能看懂的——递归和栈的关系

一个很简单的例子让你理解递归栈

代码:

public class 递归与栈 {

    public static void Recursion(int num)
    {
        if(num<1)
            return;
        System.out.println(num);  //递
        Recursion(num-1);
        System.out.println(num);  //归
        return;
    }

    public static void main(String[] args) {
        Recursion(5);
    }
}

输出:

54321是递,同时也是个压栈的过程,5在栈底,1在栈顶。

12345是归,同时也是个出栈的过程,最晚进栈的1先出栈,最早进栈的5最后出栈。

5
4
3
2
1
1
2
3
4
5

猜你喜欢

转载自blog.csdn.net/qq_38890412/article/details/106871997