递归 函数 recursion
递归调用是指函数直接或间接的调用自身
递归说明:
1). 递归函数一定要控制递归的层数(也叫深度)当符合一定条件时要终止递归调用
2). 几乎所有的递归都能用while 循环来代替
******CPython 默认递归深度是 1000 层********
思考:
能否看懂这个函数在做什么:
def mysum2(n):
if n == 1:
return 1
return n + mysum2(n-1)
print(mysum(100)) # 5050
答案是: 递归求1~100的和
# 思考:如何用递归(不用while,for,sum)来求1+2+3....+100的和.
def mysum(begin,end):
if begin==end:
return end
return begin+mysum(begin+1,end)
print(mysum(1,100)) # 5050
递归调用是指函数直接或间接的调用自身
递归说明:
1). 递归函数一定要控制递归的层数(也叫深度)当符合一定条件时要终止递归调用
2). 几乎所有的递归都能用while 循环来代替
******CPython 默认递归深度是 1000 层********
思考:
能否看懂这个函数在做什么:
def mysum2(n):
if n == 1:
return 1
return n + mysum2(n-1)
print(mysum(100)) # 5050
答案是: 递归求1~100的和
# 思考:如何用递归(不用while,for,sum)来求1+2+3....+100的和.
def mysum(begin,end):
if begin==end:
return end
return begin+mysum(begin+1,end)
print(mysum(1,100)) # 5050