对于某一个递归程序,实际上就是使用栈实现的。
在递归过程中,经常需要进入在函数A中进入下一层函数A(也就是函数自己调用自己)
个人的理解:
当函数A(a层)进入下一层(a+1层)函数A(和自己一样的函数),系统会将下一层函数的变量也进栈。
当下一层(a+1层)函数退出的时候,也就是自然返回到了本层(a层),此时我们就将第a+1层的变量出栈,栈顶的元素就是第a层的变量了。
这样,函数也就知道自己是在第几层了。
对于某一个递归程序,实际上就是使用栈实现的。
在递归过程中,经常需要进入在函数A中进入下一层函数A(也就是函数自己调用自己)
个人的理解:
当函数A(a层)进入下一层(a+1层)函数A(和自己一样的函数),系统会将下一层函数的变量也进栈。
当下一层(a+1层)函数退出的时候,也就是自然返回到了本层(a层),此时我们就将第a+1层的变量出栈,栈顶的元素就是第a层的变量了。
这样,函数也就知道自己是在第几层了。