递归函数+高阶函数
Posted brace2011
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了递归函数+高阶函数相关的知识,希望对你有一定的参考价值。
函数:
1. 递归函数:
在函数内部,可以调用其他函数,
如果一个函数在内部调用自己本身,这个函数就是递归函数;
递归特性:
1. 必须要有一个明确的结束条件;
2. 每次进入更深一层次递归时,问题规模比上一次递归都应有所减少;
3. 递归效率不高,递归层次过多会导致栈溢出。最多支持999次
def calc(n):
if n > 1:
print(n)
return calc(n/2)
else:
return 1
calc(40)
输出:
40
20.0
10.0
5.0
2.5
1.25
1. 递归函数:
在函数内部,可以调用其他函数,
如果一个函数在内部调用自己本身,这个函数就是递归函数;
递归特性:
1. 必须要有一个明确的结束条件;
2. 每次进入更深一层次递归时,问题规模比上一次递归都应有所减少;
3. 递归效率不高,递归层次过多会导致栈溢出。最多支持999次
def calc(n):
if n > 1:
print(n)
return calc(n/2)
else:
return 1
calc(40)
输出:
40
20.0
10.0
5.0
2.5
1.25
2. 高阶函数:
变量可以指向函数,函数的参数能接收变量,
那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。
def add(x,y,f):
return f(x) + f(y)
res = add(3,-6,abs)
print(res) #输出:9
以上是关于递归函数+高阶函数的主要内容,如果未能解决你的问题,请参考以下文章