鱼C论坛

 找回密码
 立即注册
查看: 2378|回复: 0

[技术交流] 《零基础入门学习python》022函数:递归是神马

[复制链接]
发表于 2017-7-7 15:36:27 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
《零基础入门学习Python》
——学习笔记

022函数:递归是神马

一.        定义分析

1.        递归:递归属于算法的范畴, 如果函数包含了对其自身的调用,该函数就是递归的。
满足递归的条件:

(1)有一个调用函数自身的行为。

(2)有一个正确的返回条件
  1. #举例子
  2. >>>def factorial(n):
  3.              if n == 1
  4.                                   return 1
  5.                   else:
  6.                                  return n * factorial(n-1)

  7. >>>factorial(5)
  8. 120
复制代码
二.        杂谈

1.022讲视频十分钟到十一分钟的例子的另一种写法:
  1. >>> def jiecheng(x):
  2.         times = x
  3.         while times != 1:
  4.                 times = times - 1
  5.                 x = x * times
  6.         return x

  7. >>> jiecheng(5)
  8. 120
复制代码
2.python为了防止递归导致的内存耗尽,设定了递归深度的限制,python2的限制是1000,python3的限制是100。

3.递归深度可以在这里修改:
  1. >>>import sys
  2. >>>sys.setrecursionlimit(10000)#递归深度为10000
复制代码
三.        部分作业分析


四.        知识掌握程度

心得:递归用来调用自身真的是很好的一个方法。

难点:判断什么时候应该是用递归。

重点:理解递归的优缺点和递归与迭代的不同之处。

评分

参与人数 2鱼币 +5 收起 理由
小甲鱼 + 2
康小泡 + 3

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-20 11:47

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表