您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

python递归函数如何用于tri_recursion函数

python递归函数如何用于tri_recursion函数

尝试用铅笔和纸追踪该功能在这种情况下,该函数的打印语句可能会引起误解。

考虑一下程序的这一部分,

if(k>0):
    result = k+tri_recursion(k-1)
...

从这里,

tri_recursion(6) = 6 + tri_recursion(5)

因此,要得到结果,因为tri_recursion(6)我们必须得到tri_recursion(5)遵循以下逻辑的结果,问题可以简化为:

tri_recursion(6) 
 = 6 + tri_recursion(5) 
 = 6 + 5 + tri_recursion(4)
 = 6 + 5 + 4 + tri_recursion(3)
 = 6 + 5 + 4 + 3 + tri_recursion(2)
 = 6 + 5 + 4 + 3 + 2 + tri_recursion(1)
 = 6 + 5 + 4 + 3 + 2 + 1 + tri_recursion(0)

现在注意0不大于0,因此程序移至else子句的主体:

else:
    result = 0
...

这意味着tri_recursion(0) = 0。因此:

tri_recursion(6) 
= 6 + 5 + 4 + 3 + 2 + 1 + tri_recursion(0)
= 6 + 5 + 4 + 3 + 2 + 1 + 0
= 21
python 2022/1/1 18:43:47 有347人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶