#Kata foldLeft y foldRight en Scala.

En este post te voy a explicar como funciona foldLeft y foldRight en Scala.

Primeros pasos.

FoldLeft y FoldRight en Scala son métodos que te permiten atravesar una colección. A diferencia de los métodos reduce, fold requiere de un valor semilla o inicial. Este valor se especifica mediante currying.

¿Cuál es la diferencia entre FoldLeft y FoldRight?

En Scala, la iteración sobre colecciones se hace de manera recursiva. La cabeza de la colección se encuentra, por lo general, en la parte izquierda.  Cuando aplicas foldLeft, la colección empieza el lado izquierdo e itera hasta el final. En cambio, cuando ejecutas foldRight, el método tiene que iterar hasta el elemento final de la colección, luego iterar hasta el comienzo, o sea, ejecutar dos operaciones. El coste computacional es ligeramente superior con foldRight.

Referencias:

 

 

Gustavo Sánchez