Picked by Algorithms Illuminated fans

Here are 4 books that Algorithms Illuminated fans have personally recommended once you finish the Algorithms Illuminated series. Book DNA is a community of authors and super-readers sharing their favorite books with the world.

Book cover of A Common-Sense Guide to Data Structures and Algorithms: Level Up Your Core Programming Skills

Daniel Zingaro Author Of Algorithmic Thinking: A Problem-Based Introduction

From my list on for actually learning how to design algorithms.

Why am I passionate about this?

I love pulling back the curtain on how computers work. I want to go from thinking "that's magic" to "that's unbelievably clever but now I understand how it works." Each time I am able to do this feels like a hard-won but therefore meaningful step toward understanding. I want others to experience this empowering shift. I have a PhD in computer science education, and  I want to know what helps people learn. More importantly, I want to know how we can use such discoveries to write more effective books. The books I appreciate most are those that demonstrate not only mastery of the subject matter but also mastery of teaching.

Daniel's book list on for actually learning how to design algorithms

Daniel Zingaro Why Daniel loves this book

For an overview book that focuses on intuition—a book that is intentionally designed to evade formality—to make my list, it has to be really, really good. This one is. I appreciate the inclusion of real code in multiple programming languages and the step-by-step traces of algorithms. I appreciate the care taken with the Big O material and the way that abstract data types are introduced. This is one of very few books whose recursion material I like—the ‘napkin’ approach to recursion is wonderfully done.  

By Jay Wengrow ,

Why should I read it?

1 author picked A Common-Sense Guide to Data Structures and Algorithms as one of their favorite books, and they share why you should read it.

What is this book about?

If you thought that data structures and algorithms were all just theory, you're missing out on what they can do for your code. Learn to use Big O Notation to make your code run faster by orders of magnitude. Choose from data structures such as hash tables, trees, and graphs to increase your code's efficiency exponentially. With simple language and clear diagrams, this book makes this complex topic accessible, no matter your background. This new edition features practice exercises in every chapter, and new chapters on topics such as dynamic programming and heaps and tries. Get the hands-on info you…


Book cover of Data Structures and Algorithms

Daniel Zingaro Author Of Algorithmic Thinking: A Problem-Based Introduction

From my list on for actually learning how to design algorithms.

Why am I passionate about this?

I love pulling back the curtain on how computers work. I want to go from thinking "that's magic" to "that's unbelievably clever but now I understand how it works." Each time I am able to do this feels like a hard-won but therefore meaningful step toward understanding. I want others to experience this empowering shift. I have a PhD in computer science education, and  I want to know what helps people learn. More importantly, I want to know how we can use such discoveries to write more effective books. The books I appreciate most are those that demonstrate not only mastery of the subject matter but also mastery of teaching.

Daniel's book list on for actually learning how to design algorithms

Daniel Zingaro Why Daniel loves this book

This is the book that started it all for me… and I think it holds up just fine today. I see value in confronting the old Pascal code every so often: it’s a reminder of how little we need in order to make our algorithms fast, and how much is happening behind the scenes by our modern programming languages. To this day this book has some of my favourite presentations of Dijkstra’s Algorithm and sorting.

By Alfred Aho , Jeffrey Ullman , John Hopcroft

Why should I read it?

1 author picked Data Structures and Algorithms as one of their favorite books, and they share why you should read it.

What is this book about?

The authors' treatment of data structures in Data Structures and Algorithms is unified by an informal notion of "abstract data types," allowing readers to compare different implementations of the same concept. Algorithm design techniques are also stressed and basic algorithm analysis is covered. Most of the programs are written in Pascal.


Book cover of Algorithms

Daniel Zingaro Author Of Algorithmic Thinking: A Problem-Based Introduction

From my list on for actually learning how to design algorithms.

Why am I passionate about this?

I love pulling back the curtain on how computers work. I want to go from thinking "that's magic" to "that's unbelievably clever but now I understand how it works." Each time I am able to do this feels like a hard-won but therefore meaningful step toward understanding. I want others to experience this empowering shift. I have a PhD in computer science education, and  I want to know what helps people learn. More importantly, I want to know how we can use such discoveries to write more effective books. The books I appreciate most are those that demonstrate not only mastery of the subject matter but also mastery of teaching.

Daniel's book list on for actually learning how to design algorithms

Daniel Zingaro Why Daniel loves this book

Many of my favourite algorithms books give short shrift to designing APIs for the algorithms and data structures that they present. The Sedgewick and Wayne book, by contrast, goes all in on an object-oriented API design. This is my book choice for Java programmers and those interested in larger program design considerations. Clear your calendar: each chapter here is massive, but I think the time investment is worth it. I especially like the chapter that shows how to tune classic algorithms for realizing speedups when working with strings.

By Robert Sedgewick , Kevin Wayne ,

Why should I read it?

1 author picked Algorithms as one of their favorite books, and they share why you should read it.

What is this book about?

This fourth edition of Robert Sedgewick and Kevin Wayne's Algorithms is the leading textbook on algorithms today and is widely used in colleges and universities worldwide. This book surveys the most important computer algorithms currently in use and provides a full treatment of data structures and algorithms for sorting, searching, graph processing, and string processing--including fifty algorithms every programmer should know. In this edition, new Java implementations are written in an accessible modular programming style, where all of the code is exposed to the reader and ready to use.



The algorithms in this book represent a body of knowledge developed…


Book cover of Algorithm Design

Daniel Zingaro Author Of Algorithmic Thinking: A Problem-Based Introduction

From my list on for actually learning how to design algorithms.

Why am I passionate about this?

I love pulling back the curtain on how computers work. I want to go from thinking "that's magic" to "that's unbelievably clever but now I understand how it works." Each time I am able to do this feels like a hard-won but therefore meaningful step toward understanding. I want others to experience this empowering shift. I have a PhD in computer science education, and  I want to know what helps people learn. More importantly, I want to know how we can use such discoveries to write more effective books. The books I appreciate most are those that demonstrate not only mastery of the subject matter but also mastery of teaching.

Daniel's book list on for actually learning how to design algorithms

Daniel Zingaro Why Daniel loves this book

I’ve probably spent more time with this book than with any other technical book. It’s one of those books where you can get as much out of it as you like by revisiting the material at increasing levels of depth. I appreciate the conversational but rigorous tone, the solved examples, the false starts, the intuition that the authors build, and the applications of algorithm design to realistic problems. The Maximum Flow chapter is not to be missed.

By Jon Kleinberg , Éva Tardos ,

Why should I read it?

1 author picked Algorithm Design as one of their favorite books, and they share why you should read it.

What is this book about?

Algorithm Design introduces algorithms by looking at the real-world problems that motivate them. The book teaches students a range of design and analysis techniques for problems that arise in computing applications. The text encourages an understanding of the algorithm design process and an appreciation of the role of algorithms in the broader field of computer science.
August 6, 2009 Author, Jon Kleinberg, was recently cited in the New York Times for his statistical analysis research in the Internet age.