There is no royal road to Geometry, said Euclid when Ptolemy I Soter asked him if there is a shorter way to geometry than going through Euclid’s Elements. Thanks to Panos Louridas, we have a royal road to algorithms. Complete beginners with no background in programming can start with Algorithms in the Essential Knowledge Series, more advanced coders can learn a lot from Real-World Algorithms.

Algorithms play a pivotal role in our everyday life, yet most of us don’t know much about them. Although there are thousands of books about the subject, most of them assume advanced knowledge of mathematics and/or programming. Louridas’ tiny little book assumes nothing more than some knowledge of high school math and an open mind. Although this book won’t teach one to be an expert of algorithms, it provides a stepping stone into the field. C. P. Snow cited thermodynamics, and basic concepts of physics as the equivalent of the works of Shakespeare, things that an educated person should know. Think of this little book as an aid to be equally versed in the two cultures. Having finished Algorithms, you are ready to talk about computational complexity, big-Oh notation and the classic graph, sorting and searching algorithms, along with PageRank – the algo that run Google for decades – and deep learning. We really enjoyed Louridas’ style and clear prose and we learned a lot from the book, although this was not our first exposure to the topic.

Louridas wrote a more technical book before the short intro in the Essential Knowledge Series, Real-World Algorithms. This book is aimed at those who are not computer professionals but have to use computational processes in their daily work. Such people usually can program in a modern programming language and knows more about computers. Real-World Algorithms is a beautifully written book, that contains all the major algos that one should know. The pseudo-code in the book can be easily translated into Python or into any other programming language. The exercises at the end of the chapters are enlightening. Although sometimes we got stuck for days, we loved solving the problems.
If you’d like to know more about algos, these books are the best resources to start with. They offer a royal road, however, this doesn’t mean that you don’t have to use your head. Reading them is not enough to understand their subject. Go through the problems described in the books. Use paper and pencil to solve the problems and/or design solutions. Check how various algorithms work with different inputs. Don’t just read the words, follow the arguments! Knowing more about algorithms teaches you to appreciate others’ solutions, and strengthens your computational thinking.
Make a one-time donation
Make a monthly donation
Make a yearly donation
Choose an amount
Or enter a custom amount
Your contribution is appreciated.
Your contribution is appreciated.
Your contribution is appreciated.
DonateDonate monthlyDonate yearly