Problem 10

This commit is contained in:
2026-03-19 15:39:23 +01:00
parent 7e6ea14b44
commit 787e55eb85
2 changed files with 32 additions and 0 deletions
@@ -0,0 +1,15 @@
package ninetyNineScalaProblems
import scala.annotation.tailrec
object Problem10:
def runLengthEncode(list: List[Any]): List[Tuple2[Int, Any]] =
@tailrec
def loop(cursor: List[List[Any]], acc: List[Tuple2[Int, Any]]): List[Tuple2[Int, Any]] =
cursor match
case d :: tail =>
loop(tail, (d.length, d(0)) :: acc)
case Nil =>
acc
loop(Problem09.consecutiveDuplicatesIntoSublists(list), List()).reverse