filter 函数是否存在无点函数来查找列表中第一个元素对的最小值?例如:

findMinimum xs =  filter ((== minimum (map fst xs)) . fst ) xs

-- example:
findMinimum [(0, 0), (0, 1), (2, 2), (3, 2), (1, 4)] = [(0, 0), (0, 1)]

如何将 findMinimum 函数转换为无点:
findMinimum = ??

最佳答案

不同的实现

head . groupBy ((==) `on` fst) . sortOn fst

首先排序和分组,选择第一个子列表。也许您可能想明确处理空列表。

关于haskell - 过滤功能免点,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/53857447/

10-13 08:07