递归函数+高阶函数

函数:
 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

猜你喜欢

转载自www.cnblogs.com/brace2011/p/9191617.html