【发布时间】:2017-10-31 07:56:04
【问题描述】:
我有这一系列函数,isMember,addElem和countries:
let rec isMember x = function
| y::ys -> y=x || (isMember x ys)
| [] -> false
let addElem x ys = if isMember x ys then ys else x::ys
let rec countries = function
| [] -> []
| (c1,c2)::m -> addElem c1 (addElem c2 (countries m))
我想使用高阶函数重写国家,但我不完全确定如何:
我的猜测是它与List.map 有关,因为我正在对列表的每个元素应用一个函数。
let countriesHigherOrder m =
List.map (fun x -> addElem x m)
【问题讨论】: