def aa1(n):
	if n == 1:
		return 1
	else:
		aa2(n)
def aa2(n):
m = n-1
aa1(m)
|  |      1ws52001      2022-06-10 17:50:16 +08:00 算的,递归函数的定义就是直接或者间接调用函数本身。你这个算是间接调用。 | 
|      2Jooooooooo      2022-06-10 17:53:08 +08:00 算, 你把 aa2 展开放到 aa1 里就更直观了. | 
|  |      3ychost      2022-06-10 17:53:45 +08:00 这是循环依赖,不过也算递归 | 
|  |      4LLaMA2      2022-06-10 18:40:06 +08:00 ``` function aa1(n: number) { while (n === 1) { return 1; } aa1(n - 1); } ``` 你写的不就是这个 | 
|      5breeza      2022-06-10 18:52:15 +08:00 这个叫互递归 | 
|  |      6hello2090      2022-06-10 19:11:38 +08:00 via iPhone 你这不就 aa1(n - 1)么 | 
|      8IMXT      2022-06-10 23:03:09 +08:00 via Android 尾递归就不会爆栈了,前提是编译器实现了尾递归优化 | 
|  |      9necomancer      2022-06-10 23:04:12 +08:00 是不是少了 return ?(在 else 和 aa2 里) | 
|  |      10dingwen07      2022-06-11 04:38:28 +08:00 via iPhone | 
|      11xiayushengfan      2022-06-11 09:29:08 +08:00 禁止套娃 | 
|  |      12anshigm      2022-06-11 13:55:43 +08:00 逻辑上不就是这样? while (n !=1 ) n -=1 return 1 一个简单的循环能搞定为什么要用这么复杂的递归?这么写有什么深意吗? | 
|  |      14aijam      2022-06-11 15:39:25 +08:00 mutual recursion |