您的位置:首页 > 其它

递归函数

2015-10-23 22:34 183 查看
# -*- coding: utf-8 -*-
#python 27
#xiaodeng
#递归函数  #508

#定义:
#在函数内部,可以调用其他函数,如果一个函数在内部调用其自身,这个函数就是递归函数

#递归
'''
(1)递归就是在过程或函数里调用自身【调用自身】
(2)在使用递归策略时,必须有一个明确的递归结束条件,称之为递归出口
递归算法要解决的3个问题:
(1)数据的定义是按递归定义的
(2)问题解法按递归算法实现
(3)数据的结构形式是按递归定义的
'''

#案例1
def mysum(L):
print L
if not L:
return 0
else:
return L[0]+mysum(L[1:])

#调用
print mysum([1,2,3,4,5])
'''
[1, 2, 3, 4, 5]
[2, 3, 4, 5]
[3, 4, 5]
[4, 5]
[5]
[]
15
'''

#案例2
def f(n):
if n==1:
return 1
return n*f(n-1)

print f(3)#6

#递归特点
#定义简单、逻辑清晰,所有的递归函数都可以写成循环的方式。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: