Grokking Algorithms is a book for beginner algorithmists and curious readers alike. It doesn’t go in depth so it isn’t of much use to more experiences Computer Scientists, but if you are just starting out this is an interesting pick. It touches on some of the basics of algorithms and it uses nice illustrations to get the concepts across.

I didn’t read the whole book, I just skimmed through it quickly as I was familiar with most of the concepts, but from what I saw it is a very easy and digestible read. Definitely would suggest to anyone just starting out in the field as a first introduction to Computer Science. It also has exercises and solutions to every chapter, something very important to get to grips with the concepts in the book.

NOTE: Skimming through the chapters, I noticed an error in the “Djikstra’s Algorithm” chapter. The book says the algorithm doesn’t work in graphs with cycles, which is not true. It doesn’t work in graphs with negative cycles (or negative weights in general). Regular, positive cycles are perfectly acceptable. Be warned that there might be other errors too. Despite this possible issue, I’m still suggesting this book as an introductory piece. Just don’t take everything as 100% absolute truth.