Explore the latest books of this year!
Bookbot

Algorithms Illuminated

This series delves into the intricate world of algorithms, progressing from foundational concepts to advanced techniques. Each volume offers an accessible approach to tackling complex computational problems, covering essential areas like data structures, graph algorithms, and strategies for NP-hard problems. It's an ideal resource for anyone seeking to deepen their understanding of computational complexity and efficient algorithmic solutions.

Algorithms Illuminated (Part 3)
Algorithms illuminated. Part 2, Graph algorithms and data structures
Algorithms Illuminated (Part 1)

Recommended Reading Order

  1. 1

    Algorithms Illuminated is an accessible introduction to algorithms for anyone with at least a little programming experience, based on a sequence of popular online courses. Part 1 covers asymptotic analysis and big-O notation, divide-and-conquer algorithms, randomized algorithms, and several famous algorithms for sorting and selection.

    Algorithms Illuminated (Part 1)
  2. 2

    Algorithms are the heart and soul of computer science. Their applications range from network routing and computational genomics to public-key cryptography and machine learning. Studying algorithms can make you a better programmer, a clearer thinker, and a master of technical interviews. Algorithms Illuminated is an accessible introduction to the subject for anyone with at least a little programming experience. The exposition emphasizes the big picture and conceptual understanding over low-level implementation and mathematical details---like a transcript of what an expert algorithms tutor would say over a series of one-on-one lessons. Part 2 covers graph search and applications, shortest paths, and the usage and implementation of several data structures (heaps, search trees, hash tables, and bloom filters).

    Algorithms illuminated. Part 2, Graph algorithms and data structures
  3. 3

    Accessible, no-nonsense, and programming language-agnostic introduction to algorithms. Part 3 covers greedy algorithms (scheduling, minimum spanning trees, clustering, Huffman codes) and dynamic programming (knapsack, sequence alignment, shortest paths, optimal search trees).

    Algorithms Illuminated (Part 3)