高阶函数

来源:互联网 发布:微信公众号跳转淘宝 编辑:程序博客网 时间:2024/05/16 06:14
中文名
高阶函数
别    称
算子(运算符)或泛函
函数型别
包含多于一个箭头的函数
常见例子
微积分中的导数

目录

1高阶函数

 高阶函数原理
 高阶函数范例

1高阶函数编辑

高阶函数原理

在数学和计算机科学中,高阶函数是至少满足下列一个条件的函数:
接受一个或多个函数作为输入
输出一个函数
在数学中它们也叫做算子(运算符)或泛函。微积分中的导数就是常见的例子,因为它映射一个函数到另一个函数。
在无类型 lambda 演算,所有函数都是高阶的;在有类型 lambda 演算(大多数函数式编程语言都从中演化而来)中,高阶函数一般是那些函数型别包含多于一个箭头的函数。在函数式编程中,返回另一个函数的高阶函数被称为Curry化的函数。
在很多函数式编程语言中能找到的 map 函数是高阶函数的一个例子。它接受一个函数 f 作为参数,并返回接受一个列表并应用 f 到它的每个元素的一个函数。

高阶函数范例

高阶函数的其他例子包括函数复合、积分和常量函数 λx.λy.x。
[编辑]范例
这是一个Python script 的例子, 其中函式 g() 有一引数以及回传一函数. 这个例子会打印 100 ( g(f,7)= (7+3)×(7+3) ).
def f(x):
return x + 3
def g(function, x):
return function(x) * function(x)
print g(f, 7)
下列是Scheme 语言的例子, 函数 g()有一引数以及回传一函数. 函数 a()取得一值并加上 7, 再回传. (例如 a(3)=10).
(define (g x)
(lambda (y) (+ x y)))
(define a (g 7))
(display (a 3))
0 0
原创粉丝点击