Я знаю, как объединить два отсортированных списка в Haskell, однако я не знаю, как объединить три отсортированных списка. Я написал код, что мне делать дальше?
Я действительно новичок в программировании на Haskell, я смотрел фильм "Learn You a Haskell for Great Good!" как начало учить Haskell. Я пытался следовать формату объединения двух отсортированных списков:
mergeS :: (Ord a) => [a] -> [a] -> [a] -> [a]
mergeS [] [] [] = []
mergeS (x:xs) [] [] = (x:xs)
mergeS [] (y:ys) [] = (y:ys)
mergeS [] [] (z:zs) = (z:zs)
mergeS (x:xs) (y:ys) (z:zs) -- I do not know how to write from here
Правильный ответ будет примерно таким:
mergeS :: (Ord a) => [a] -> [a] -> [a] -> [a]
mergeTwoLists :: Ord a => [a] -> [a] -> [a]
...
mergeS x y z = mergeTwoLists x (mergeTwoLists y z)