文字列の最初の単語の長さで文字列のリストをソートしようとしています(文字列に複数の単語がある場合)文字列。これは私が持っているコードですが、私にエラーを与えています。誰か助けてくれますか?最初の単語の長さで文字列のリストを並べ替える
listStrings :: [String] -> [(String, Int)]
listStrings = map (\ws -> (head ws , length ws)). group.sort.words
文字列の最初の単語の長さで文字列のリストをソートしようとしています(文字列に複数の単語がある場合)文字列。これは私が持っているコードですが、私にエラーを与えています。誰か助けてくれますか?最初の単語の長さで文字列のリストを並べ替える
listStrings :: [String] -> [(String, Int)]
listStrings = map (\ws -> (head ws , length ws)). group.sort.words
ちょうどそれがここでの最初の言葉
import Data.List
listStrings :: [String] -> [String]
listStrings = reverse . sortBy sortF
where
sortF :: String -> String -> Ordering
sortF = comparing (length . head . words)
のレンスを比較しますあなたはlive example
'words'は'文字列型を持つ必要があります - > [文字列] 'が、あなたをそれを '[String]'に適用してみてください。 – freestyle
2番目の関数 'listStrings'は' [String] - > [(String、Int)] '型ですが、あなたの質問から型は' [String] - > [String] 'でなければなりません。だからあなたは何をしたいのですか? – freestyle