Skip to main content
WebsitebeginnerFree

Visualgo

Unknown

Interactive visualizations of data structures and algorithms built by Steven Halim at the National University of Singapore, animating sorting, trees, graphs, and shortest paths step by step so learners can trace how each algorithm changes state.

Visit resource

More resources on Algorithms

BookPaid

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.

CourseFree

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.

WebsiteFree

cp-algorithms.com

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.

CourseFree

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.

CourseFree

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.

WebsiteFree

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.

See all Algorithms resources →