首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

学习递归算法,这一篇就够了 python3

先看程序:

刚学习Python的小伙伴一般的写递归都是这样写

运行一下看看:

是不是出错了啊,为什么呢?

怎么会出错了呢?

Python3 默认的递归深度是1000

Python3 的递归调用栈的深度有限制, 可以通过sys.getrecursionlimit()查看

如果没有就会无限的循环下去了

编写递归函数时,必须告诉它何时停止递归。正因为如此,每个递归函数都有两部分:基线 条件(base case)和递归条件(recursive case)。递归条件指的是函数调用自己,而基线条件则 指的是函数不再调用自己,从而避免形成无限循环。

现在修改一下啊:

输出结果是:

怎么样 ,递归算法是不是很简单呢?

主要记住两个条件:

基线条件

递归条件

是不是很容易啊

源码地址:https://www.168seo.cn/data-structure/24293.html

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180113G0AGIV00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券