gpt4 book ai didi

haskell - 将 bool 函数列表应用于列表的最简洁方法?

转载 作者:行者123 更新时间:2023-12-02 14:58:42 25 4
gpt4 key购买 nike

考虑一下:

ruleset = [rule0, rule1, rule2, rule3, rule4, rule5]

其中 rule0rule1 等是采用一个参数的 bool 函数。查找特定列表的所有元素是否满足规则集中中的所有规则的最简洁方法是什么?

显然,循环是可行的,但 Haskell 人似乎总是对这类问题有巧妙的妙语。

all 函数似乎合适(例如 all (== check_one_element) 规则集)或嵌套 map。另外,map ($ anElement) 规则集大致是我想要的,但适用于所有元素。

我是 Haskell 的新手,解决这个问题的方法有很多。

最佳答案

如果您要求所有函数对于每个参数都为真,那么它就是

and (ruleset <*> list)

(您需要import Control.Applicative才能使用<*>。)

说明:

何时 <*>给定一对列表,它将左侧列表中的每个函数应用于右侧列表中的每个参数,并返回一个包含所有结果的列表。

关于haskell - 将 bool 函数列表应用于列表的最简洁方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14790903/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com