Advertisement
Guest User

flatten.scala

a guest
Apr 8th, 2020
286
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Scala 0.30 KB | None | 0 0
  1. // using flatMap
  2. def flatten(xs: List[Any]): List[Any] = xs.flatMap {
  3.     case ls: List[_] => flatten(ls)
  4.     case x => List(x)
  5. }
  6.  
  7. // without flatMap
  8. def flatten(xs: List[Any]): List[Any] = xs.foldLeft(List[Any]()) {
  9.     case (acc, ls: List[_]) => acc ::: flatten(ls)
  10.     case (acc, x) => acc ::: List(x)
  11. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement