#Kata reduceLeft y reduceRight en Scala

En este post te voy a explicar como funciona reduceLeft y reduceRight en Scala.

Primeros pasos.

ReduceLeft y ReduceRight son métodos que atraviesan una colección. Sirven para reducir la colección a un solo elemento. A diferencia de foldLeft y foldRight, los métodos de reducción no reciben un valor semilla.

¿Cuál es la diferencia entre ReduceLeft y ReduceRight?

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 reduceLeft, la colección empieza el lado izquierdo e itera hasta el final. En cambio, cuando ejecutas reduceRight, 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 reduceRight.

Referencias:

Gustavo Sánchez