Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List 单词在单词列表中出现的次数haskell_List_Haskell_Matrix_Tuples - Fatal编程技术网

List 单词在单词列表中出现的次数haskell

List 单词在单词列表中出现的次数haskell,list,haskell,matrix,tuples,List,Haskell,Matrix,Tuples,我刚开始在Haskell中编程,我想创建一个函数,获取一个单词列表和一个字母列表,然后转换成一个字母矩阵,就像一个单词搜索拼图,然后返回单词列表中的哪些单词出现在矩阵中,以及出现的次数,以元组的形式返回这些信息 我已经有了单词搜索的功能,只是找不到一种写单词的方法 发生的时间 我希望能得到一点帮助:) 谢谢 以下是一个您可以使用的函数: find :: (Eq a, Enum e) => a -> [a] -> e find _ [] = toEnum 0 find y

我刚开始在Haskell中编程,我想创建一个函数,获取一个单词列表和一个字母列表,然后转换成一个字母矩阵,就像一个单词搜索拼图,然后返回单词列表中的哪些单词出现在矩阵中,以及出现的次数,以元组的形式返回这些信息

我已经有了单词搜索的功能,只是找不到一种写单词的方法 发生的时间

我希望能得到一点帮助:)


谢谢

以下是一个您可以使用的函数:

find :: (Eq a, Enum e) => a -> [a] -> e
find _ []     = toEnum 0
find y (x:xs) = (if y == x then succ else id) $ find y xs

find 3[1,2,3]
抛出一个错误:“没有因使用
find
而产生的(Enum e0)实例。类型变量
e0
不明确”@ThreeFx是否为其指定了特定的返回类型?这个函数对我来说很好,但是我必须给它一个显式的返回类型,比如
find3[1,2,3]::Int
,这样编译器就知道使用哪个
Enum
实例了。@bheklillr lol我完全忘记了:D一切都很好。但是为什么不
find::Eq a=>a->[a]->Int
?@PyRulez完美!谢谢大家!@专门化为
Int
的ThreeFix将受到限制。如果你想使用懒惰的peano数字呢?还是无界的
整数
?或者你打算用它来计算浮点数?