什么是递归?
(1)递归必须有一个明确的结束条件,否则会报错
(2)每进入一个递归,问题的规模必须比之前都减少
(3)递归的效率不高,层次过多容易导致系统的内存溢出
定义一个函数:
def calc(n):
print(n)
calc(n) #定义一个函数,然后再调用自己,一直生生世世的进行循环自己,是一个死循环
def calc(n):
print(n)
if int(n/2)==0: #这就是结束条件,避免递归函数无穷的进行下去
return n
return calc(int(n/2)) #递归的过程
calc(10)
#输出结果为10,5,2,1
浙公网安备 33010602011771号