|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 1137381680 于 2017-7-9 14:27 编辑
《零基础入门学习Python》
——学习笔记
023 递归:这帮小兔崽子
一. 定义分析
P.S这一节由于是操作,没有新的名词出现,为了让自己不忘记递归的用法,我把题目和自己写的码放在下面。
二. 杂谈
1. 斐波那契额数列:
迭代算法:
- def rabbit(input):
- x = 1
- y = 1
- times = 2
- month = input
- while month == 1 or month ==2:
- return 1
- while times != month:
- z = x + y
- x = y
- y = z
- times = times + 1
- return z
- while 1:
- print(rabbit(int(input('请输入月份:'))))
复制代码 2.递归算法:
- def fab(n):
- if n < 1:
- print('输入有误!')
- return -1
- if n == 1 or n == 2:
- return 1
- else:
- return fab(n-1) + fab(n-2)
- while 1:
- print(fab(int(input('请输入月份:'))))
复制代码 2. 如果用递归求这种数列,那么并不会把代码变得多简单,反而在运行时会因为其分布的原理把运算复杂化,使运算减慢甚至死机。所以不要什么情况都使用递归。
3. 由于本人能力有限,在试了很多遍以后都没能够实现互动的产生出结果,如:
- 请输入经过了几个月:12
- 总共有144对小兔子诞生!
复制代码 这种形式,所以希望如果有做出来的朋友麻烦您把代码贴在帖子里供大家学习,在此感谢您!
三. 部分作业分析
无
四. 知识掌握程度
心得:学到了斐波那契额数列,并且能够用迭代的方式和递归的方式满足条件。
难点:如何运用算法解决这个数列
重点:如何利用自创建函数的调用实现递归。
注:此贴内的图片版权归小甲鱼老师所有 |
评分
-
查看全部评分
|