【发布时间】:2021-01-13 09:09:52
【问题描述】:
我必须用该元素的出现次数替换列表中的所有元素,比如如果我有“Taylor Swift”,结果将是 [1,1,1,1,1,1,1,1, 1,1,1,1]。
我已经编写了代码来计算出现次数,我只知道如何用我已经尝试过的出现次数替换所有元素:
ocurr :: [Char] -> Char -> Int
ocurr xs x = length(filter (x==) xs)
frequencias :: [Char] -> [Char]
frequencias "" = []
frequencias xs = [ ocurr xs y| y <- xs]
和
ocurr :: [Char] -> Char -> Int
ocurr xs x = length(filter (x==) xs)
frequencias :: [Char] -> [Char]
frequencias "" = []
frequencias xs = [x | y <- xs x = ocurr xs x]
但是这些都不起作用... 谁能帮帮我?
【问题讨论】:
-
当您说“这些都不起作用”时,请详细说明问题所在。你得到编译器拒绝吗?那么请给出错误信息。它是否编译并运行但返回错误的答案?然后举一个小例子说明它返回什么以及为什么你说它是错误的。
-
您似乎在首次发布后对其进行了编辑,以删除预期输出的示例。 O.P. 是否还包含
ocurr的定义?就现在的 q 而言,它是无用的,威廉的回答没有意义。