Book Image

Fundamental Algorithms in Scala

By : James Cutajar
Book Image

Fundamental Algorithms in Scala

By: James Cutajar

Overview of this book

Scala's functional programming features are a boon to help you design “easy to reason about” systems to control growing software complexities. In this course, you will look at some classic simple algorithms. Most algorithms are traditionally defined in an imperative manner, typically consisting of repetitions in the form of conditional looping and altering states. Writing these in a functional manner is not always a trivial process. Moving ahead, you will learn to implement these elementary algorithms using a combination of functional concepts instead of the traditional imperative approach. After covering the important functional concepts in Scala you will move on to the decimal to binary conversion and generate sequences algorithms. Further, we will look at implementing a series of algorithms such as generating prime numbers, divide and conquer, greedy algorithms, and functional infix to postfix conversion. By the end of this course, you will be well versed in the functional concepts of Scala and would have implemented all of these.
Table of Contents (7 chapters)
Chapter 6
Prime Numbers
Content Locked
Section 3
Classic Implementation
Here we will see imperative implementations for both the sieve and the segmented sieve, both discussed in the previous section. - Learn about how we check for a condition in lists - See the non-function code for the sieve algorithm - Watch how we can implement the segmented version