如何使用Python递归函数中的递推?

Python (186) 2023-05-14 03:08:10

我们大家都知道,一个函数可能存在多种不同的用法,很少是有函数只针对一个方式,那么基于一种函数,我们肯定要了解多个方式,今日针对递归函数里的递推内容给大家介绍哦~

递归是什么?

是指函数/过程/子程序在运行过程序中直接或间接调用自身而产生的重入现象。

下面是个人理解:递归就是在函数内部调用自己的函数被称之为递归。

实例:

#直接调用自己:deffunc:print('fromfunc')func
Func

#间接调用自己deffoo:print('fromfoo')bar
defbar:print('frombar')foo
Foo

#递归的实现:defage(n):ifn==1:return18returnage(n-1)+2
print(age(5))
#age(5)=age(4)+2第一次进入#age(4)=age(3)+2第二次进入#age(3)=age(2)+2第三次进入#age(2)=age(1)+2第四次进入#age(1)=18第五次进入,最后判断终止条件
#age(n)=age(n-1)+2#n>1递归终止条件#age(1)=18#n=1等于终止条件

递归的回溯与递推

递推:像上边递归实现所拆解,递归每一次都是基于上一次进行下一次的执行,这叫递推。回溯:则是在遇到终止条件,则从最后往回返一级一级的把值返回来,这叫回溯。

#实例l=[1,2,[3,[4,5,6,[7,8,[9,10,[11,12,13,[14,15,[16,[17,]],19]]]]]]]
defsearch(l):foriteminl:iftype(item)islist:search(item)else:print(item)
search(l)

好啦,以上就是关于递推的全部内容啦,大家快来试试吧~

THE END

发表回复