欢迎大家来到IT世界,在知识的湖畔探索吧!
1.简单递归
def fib(x): #def定义函数,fib为函数名(随意定义),x是参数(可随意)。
if x == 1: #如果x等于1, == 是恒等于
return x #返回值值为1
else: #否则
return x*fib(x-1) #返回x*fib(x-1)的值
print(fib(5)) #输出fib(5)
“””
fib(5)=5*(5-1) x=4 大于1
fib(4)=4*(4-1) x=3 大于1
fib(3)=3*(3-1) x=2 大于1
fib(2)=2*(2-1) x=1 等于1
fib(5)=5*4*3*2*1=120
“””
2.提升难度
def fib(x):
if x == 0 or x == 1:
return 1
return fib(x-1)+fib(x-2)
print(fib(5))
“””
首先fib(5)
第一遍循环:fib(5)=fib(4)+fib(3)
第二遍循环:fib(4)=fib(3)+fib(2),fib(3)=fib(2)+fib(1)
第三遍循环:fib(3)=fib(2)+fib(1),fib(2)=fib(1)+fib(0)
第四遍循环:fib(2)=fib(1)+fib(0),因为x=0或者x=1,返回结果为1,所以fib(2)=1+1
结果:fib(5)=fib(1)+fib(0)+1+1+1+1+1+1=8
“””
免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/35034.html