我需要一个Haskell函数,该函数需要一个[Strings]列表并返回[(String,Int)],将匹配的Strings togheter配对并保持数字计数。例如,如果插入内容是[String],例如[“ candy”,“ flower”,candy“,” gum“)],则输出应为[(” candy“,2),(” flower“,1) ,(“ gum”,1)]。
此代码对我来说很好:
countWords:: [String] -> [(String, Int)]
countWords xs = map (\w -> (head w, length w)) (group (sort xs))
,但它取决于import Data.List
。我需要帮助而无需Import Data.List
来获取此代码。谢谢!