Ael*_*lin 0 string haskell list palindrome
函数countPalindromes接收一个字符串列表,并返回有多少字符串为回文的计数.
isPalindrome :: String -> Bool
isPalindrome w = w == reverse w
countPalindromes :: [String] -> Int
countPalindromes ss = length filter (== isPalindrome) ss
Run Code Online (Sandbox Code Playgroud)
我知道函数长度应用于两个参数而不是一个.我只是不知道如何解决这个问题?
您可以使用括号来影响功能应用程序:
countPalindromes ss = length (filter (== isPalindrome) ss)
Run Code Online (Sandbox Code Playgroud)
括号将导致整个表达式filter (== isPalindrome) ss被分组为单个术语,并将其结果传递给length.
这将使您进入下一个错误; 我鼓励你仔细阅读,看看你是否可以自己从这里取得进展,然后提出一个新的问题,如果你花了十五分钟试图理解它而不取得进展.