From 112537fa5f4f9963a050dd22ab4352f5fcc2cdc2 Mon Sep 17 00:00:00 2001 From: Matt Bovel <matthieu.bovel@epfl.ch> Date: Wed, 16 Mar 2022 12:23:46 +0000 Subject: [PATCH] Update exercise-3.md --- exercises/exercise-3.md | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/exercises/exercise-3.md b/exercises/exercise-3.md index 2376fce..ed6e534 100644 --- a/exercises/exercise-3.md +++ b/exercises/exercise-3.md @@ -1,14 +1,6 @@ # Exercise 3 -Use the following commands to make a fresh clone of your repository: - -``` -git clone -b exercise-3 git@gitlab.epfl.ch:lamp/student-repositories-s22/cs206-GASPAR.git exercise-3 -``` - -Update the README.md file with your solutions. Don't forget to list the group members's SCIPER numbers. - -# Problem 1: Parallel Encoding +## Problem 1: Parallel Encoding In this exercise, your group will devise a parallel algorithm to encode sequences using the run-length encoding scheme. The encoding is very simple. It transforms sequences of letters such that all subsequences of the same letter are replaced by the letter and the sequence length. For instance: @@ -38,7 +30,7 @@ Buffer.empty[A]: Buffer[A] // Returns an empty buffer. Buffer.singleton[A](element: A): Buffer[A] // Single element buffer. ``` -# Problem 2: Parallel Two Phase Construction +## Problem 2: Parallel Two Phase Construction In this exercise, you will implement an array Combiner using internally a double linked list (DLL). Below is a minimal implementation of the `DLLCombiner` class and the related `Node` class. Your goal for this exercise is to complete the implementation of the (simplified) Combiner interface of the `DLLCombiner` class. @@ -68,7 +60,7 @@ class Node[A](val value: A) { *Hint:* This is an open-ended question, there might be multiple solutions. In your solution, you may want to add extra information to the class Node and/or the class DLLCombiner. -# Problem 3: Pipelines +## Problem 3: Pipelines In this exercise, we look at pipelines of functions. A pipeline is simply a function which applies its argument successively to each function of a sequence. To illustrate this, consider the following pipeline of 4 functions: -- GitLab