【发布时间】:2016-04-14 19:03:16
【问题描述】:
我正在尝试编写一个非常简单的函数,它接受一个列表(例如:[1,2,3,1,5])并返回一个直接位于特定元素之后的元素列表。
到目前为止我所达到的是:
function element list = filter (\x -> element:x) list
我想要的输出:
函数 1 [1,2,3,1,5]
=> [2,5]
【问题讨论】:
-
“旁边”是指“之后”,对吗?
-
完全正确;指定元素直接在所需元素之前
-
带列表理解,这是
foo a xs = [y | (x:y:_) <- tails xs, x==a]。tailsis from Data.List.
标签: list haskell lambda higher-order-functions