首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这个python代码是迭代的还是递归的?

这个python代码是迭代的还是递归的?
EN

Stack Overflow用户
提问于 2022-11-20 13:25:56
回答 1查看 77关注 0票数 -4

我用python编写了以下程序:

代码语言:javascript
复制
def summ(a,b):
    return summation(a,a,a,b)

def summation(v,c,a,b):
    if (c == b):
        return v
    else:
        return summation(v+c+1,c+1,a,b)

算法类型的研究

总的来说,我对算法和编程很陌生,我编写了这段代码,认为这是一种迭代算法,但根据以下视频:

算法讲座2.迭代程序的时间复杂度分析- YouTube

  • 迭代算法使用循环,例如'while','for‘
  • 递归算法包含'if .然后‘语句

我如何才能知道这是迭代算法还是递归算法?

EN

回答 1

Stack Overflow用户

发布于 2022-11-20 17:54:29

迭代函数是使用一些循环执行一组语句的函数,即"for循环“、"while循环”。

递归函数是反复调用自身直到基条件变为假的函数。递归函数是高级函数,很难理解程序的流程。

在递归中,我们有一个基本条件,所有的流都是基于这个条件的。

代码语言:javascript
复制
def summation(v,c,a,b):
    if (c == b):
        return v
    else:
        return summation(v+c+1,c+1,a,b)

上面的函数是递归函数,因为它有一个基函数,并在else块中调用自己。

代码语言:javascript
复制
if(c == b):
   return v
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/74510436

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档