Difference between revisions of "99 questions/Solutions/2"

From HaskellWiki
Jump to navigation Jump to search
(4 intermediate revisions by 2 users not shown)
Line 14: Line 14:
   
 
myButLast'''' = head . tail . reverse
 
myButLast'''' = head . tail . reverse
 
myButLast''''' = head . drop 1 . reverse
 
 
</haskell>
 
</haskell>
  +
  +
  +
[[Category:Programming exercise spoilers]]

Revision as of 19:36, 18 January 2014

(*) Find the last but one element of a list.

myButLast :: [a] -> a
myButLast = last . init

myButLast' x = reverse x !! 1

myButLast'' [x,_]  = x
myButLast'' (_:xs) = myButLast'' xs

myButLast''' (x:(_:[])) = x
myButLast''' (_:xs) = myButLast''' xs

myButLast'''' = head . tail . reverse