def aa1(n):
if n == 1:
return 1
else:
aa2(n)
def aa2(n):
m = n-1
aa1(m)
def aa1(n):
if n == 1:
return 1
else:
aa2(n)
def aa2(n):
m = n-1
aa1(m)
|
ws52001Jun 10, 2022
1
算的,递归函数的定义就是直接或者间接调用函数本身。你这个算是间接调用。
|
|
JoooooooooJun 10, 2022
2
算, 你把 aa2 展开放到 aa1 里就更直观了.
|
|
ychostJun 10, 2022
3
这是循环依赖,不过也算递归
|
|
LLaMA2Jun 10, 2022
4
```
function aa1(n: number) { while (n === 1) { return 1; } aa1(n - 1); } ``` 你写的不就是这个 |
|
breezaJun 10, 2022
5
这个叫互递归
|
|
hello2090Jun 10, 2022 via iPhone
6
你这不就 aa1(n - 1)么
|
|
IMXTJun 10, 2022 via Android
8
尾递归就不会爆栈了,前提是编译器实现了尾递归优化
|
|
necomancerJun 10, 2022
9
是不是少了 return ?(在 else 和 aa2 里)
|
|
xiayushengfanJun 11, 2022
11
禁止套娃
|
|
anshigmJun 11, 2022
12
逻辑上不就是这样?
while (n !=1 ) n -=1 return 1 一个简单的循环能搞定为什么要用这么复杂的递归?这么写有什么深意吗? |
|
aijamJun 11, 2022
14
mutual recursion
|