cp-algorithms.com
Unknown
Open-source translation of the Russian e-maxx algorithm compendium, with articles on number theory, combinatorics, graph algorithms, string processing, and geometry. Each entry pairs a derivation with tested C++ code you can adapt for contest problems.
More resources on Algorithms
Introduction to Algorithms (CLRS)
Textbook covering sorting, data structures, graph algorithms, dynamic programming, greedy methods, and NP-completeness, with pseudocode and formal proofs of correctness and running time. Readers finish able to analyze asymptotic complexity and justify algorithm choices mathematically.
Algorithms, Part I
This course covers the essential information that every serious programmer needs to know about algorithms and data structures, with emphasis on applications and scientific performance analysis of Java implementations. Part I covers elementary data structures, sorting, and searching algorithms. Part II focuses on graph- and string-processing algorithms. All the features of this course are available for free. People who are interested in digging deeper into the content may wish to obtain the textbook Algorithms, Fourth Edition (upon which the course is based) or visit the website algs4.cs.princeton.edu for a wealth of additional material. This course does not offer a certificate upon completion.
Introduction to Algorithms (MIT 6.006)
MIT's undergraduate introduction, with video lectures, problem sets, and exams covering asymptotic analysis, sorting, hashing, binary search trees, graph search, shortest paths, and dynamic programming. Assignments use Python, so you implement each technique rather than only proving it.
Topics in Theoretical Computer Science: An Algorithmist's Toolkit (MIT 18.409)
Geometric and spectral techniques used in modern algorithm design, starting with spectral graph theory: graph Laplacians, spectral partitioning, Cheeger's inequality, expanders and random walks. 25 lecture-note files and problem sets equip learners to apply eigenvalue methods to algorithmic problems.
Princeton Algorithms 4
Companion site to Sedgewick and Wayne's Algorithms, fourth edition, with free Java implementations, exercises, lecture slides, and test data for sorting, searching, graphs, and strings. Readers can study working code alongside the textbook's analysis.
USACO Guide
Free, community-maintained curriculum for the USA Computing Olympiad, organized from Bronze to Platinum with explanations, code in C++, Java, and Python, and curated practice problems. Learners build skill in greedy algorithms, binary search, dynamic programming, graph algorithms, and data structures for contest problem solving.