Ich bin ziemlich neu in Haskell, und ich habe ein wenig Ärger. Ich versuche, eine Funktion zu implementieren, die eine Liste und einen Int aufnimmt. Der int soll der Index k sein, bei dem die Liste in ein Listenpaar aufgeteilt wird. Der erste enthält die ersten k Elemente der Liste und der zweite von k + 1 bis zum letzten Element. Hier ist, was ich bis jetzt habe:Haskell: Teilen einer Liste in 2 bei Index k
split :: [a] -> Int -> ([a], [a])
split [] k = error "Empty list!"
split (x:[]) k = ([x],[])
split xs k | k >= (length xs) = error "Number out of range!"
| k < 0 = error "Number out of range!"
Ich kann nicht wirklich herausfinden, wie man die Spaltung macht. Jede Hilfe wäre willkommen.
Vielleicht wird dies helfen? - [Sub-Arrays in Haskell nehmen] (http://stackoverflow.com/questions/5522074/taking-sub-arrays-in-haskell) – arunkumar
Nein, verwenden Sie keine Arrays zur Listenverarbeitung! – AndrewC