【发布时间】:2009-05-12 10:08:18
【问题描述】:
我有 2 个字符串列表
例如:
listx = ["name","age","rank"]
input = ["name","age"]
如何比较两个列表以检查listx 是否包含input 中给出的"name" 和"age"?
【问题讨论】:
标签: list haskell comparison
我有 2 个字符串列表
例如:
listx = ["name","age","rank"]
input = ["name","age"]
如何比较两个列表以检查listx 是否包含input 中给出的"name" 和"age"?
【问题讨论】:
标签: list haskell comparison
当 B \ A 为空时,B 是 A 的子集
所以另一种方法是
import Data.List ((\\))
null (input \\ listx)
【讨论】:
all (flip elem listx) input
想到了。不知道它的效率如何......
【讨论】:
elemlistx) input”。 @dlna:基本上它扩展为“all (\x -> x elem listx) input”,这确保对于输入的每个元素,它都是 listx 的一个元素
这是作业吗? :)
您需要创建一个或两个递归函数来遍历两个列表,并搜索输入中的每个字符串。
或者,您可以在 Prelude 中查找一些有用的功能。
【讨论】:
elem listx |x [String] -> [a] *** 不匹配: [String] -> [String] -> Bool
elem listx |x
另一种方式。
import Data.Set
(fromList input) `isSubsetOf` (fromList listX)
【讨论】: