Data Structures & Algorithms
The core computer-science toolkit for problem solving and interviews.
Beginner
Start here. No background needed beyond school maths.
Algorithms, 4th Edition (booksite)
Free lectures, code and exercises for the classic Princeton text on sorting, searching, graphs and strings, in Java.
Sign up to see the source
Data Structure Visualizations
Step-by-step animations of stacks, trees, heaps, hash tables and sorting that you can control with your own input.
Sign up to see the source
VisuAlgo
Animated visualisations of data structures and algorithms that you can step through, with quizzes to test yourself.
Sign up to see the source
Advanced
Once the basics are comfortable.
MIT 6.006 Introduction to Algorithms
MIT's undergraduate algorithms course with lecture videos, notes and problem sets, covering sorting, hashing, graphs and dynamic programming.
Sign up to see the source
Open Data Structures
A free textbook on data structures with analysis, available in Java, C++ and Python editions.
Sign up to see the source

