def aa1(n):
if n == 1:
return 1
else:
aa2(n)
def aa2(n):
m = n-1
aa1(m)
14 条回复 • 2022-06-11 15:39:25 +08:00
|
1
ws52001 2022 年 6 月 10 日
算的,递归函数的定义就是直接或者间接调用函数本身。你这个算是间接调用。
|
|
2
Jooooooooo 2022 年 6 月 10 日
算, 你把 aa2 展开放到 aa1 里就更直观了.
|
|
3
ychost 2022 年 6 月 10 日
这是循环依赖,不过也算递归
|
|
4
LLaMA2 2022 年 6 月 10 日
```
function aa1(n: number) { while (n === 1) { return 1; } aa1(n - 1); } ``` 你写的不就是这个 |
|
5
breeza 2022 年 6 月 10 日
这个叫互递归
|
|
6
hello2090 2022 年 6 月 10 日 via iPhone
你这不就 aa1(n - 1)么
|
|
8
IMXT 2022 年 6 月 10 日 via Android
尾递归就不会爆栈了,前提是编译器实现了尾递归优化
|
|
9
necomancer 2022 年 6 月 10 日
是不是少了 return ?(在 else 和 aa2 里)
|
|
10
dingwen07 2022 年 6 月 11 日 via iPhone
|
|
11
xiayushengfan 2022 年 6 月 11 日
禁止套娃
|
|
12
anshigm 2022 年 6 月 11 日
逻辑上不就是这样?
while (n !=1 ) n -=1 return 1 一个简单的循环能搞定为什么要用这么复杂的递归?这么写有什么深意吗? |
|
14
aijam 2022 年 6 月 11 日
mutual recursion
|
推荐学习书目
› Learn Python the Hard Way
Python Sites
› PyPI - Python Package Index
› http://diveintopython.org/toc/index.html
› Pocoo
值得关注的项目
› PyPy
› Celery
› Jinja2
› Read the Docs
› gevent
› pyenv
› virtualenv
› Stackless Python
› Beautiful Soup
› 结巴中文分词
› Green Unicorn
› Sentry
› Shovel
› Pyflakes
› pytest
Python 编程
› pep8 Checker
Styles
› PEP 8
› Google Python Style Guide
› Code Style from The Hitchhiker's Guide