使用递归时,一定不能去思考具体的递归过程。因为想多的肯定是会疯的。。
递归递归,其实是有两个过程的,一个是递,一个是归打个比方:
在电影院,没有开灯,你不知道自己的座位在哪里,所以你问下,你前面的人是哪一个排,但是这个人也不记得了,所以,他继续往前问,直到有人直到答案。这个过程就相当于是递,递过去之后,还得归,也就是,前面的人一个个的往回传答案。
这个过程中,有两点是需要注意的,一个是停止递的条件,一个是归的什么。。在上面这个例子中,停止递的条件就是座位号,归回来的也是座位号。
注意,所有的循环都是可以使用递归来实现的,但是使用递归需要更多的空间,容易造成内存溢出。