Data Structures in Java and Python
A Pro study guide on Data Structures: 29 lessons in 9 parts, 7 hands-on Practical use cases. A Pro plan opens every lesson, practice question and Practical.
What you will learn
- Foundations - What data structures are, linear and non-linear shapes, Big-O, arrays and strings. (4 lessons)
- Lists, stacks and queues - Linked lists (singly and doubly linked), stacks, queues and the queue types, and the problems each one fits. (5 lessons)
- Hashing - How hash tables work, and maps and sets in practice. (2 lessons)
- Trees - Binary search trees, traversals and heaps. (3 lessons)
- Graphs - Kinds of graph and how to store them, BFS and DFS, shortest paths, dependency order and union-find. (5 lessons)
- Sorting and searching - Binary search and sorting algorithms compared. (2 lessons)
- Under the hood - Garbage collection in Java and Python, and how a database finds a row. (3 lessons)
- Choosing the right structure - Big-O of the Java collections and Python built-ins side by side, so you can pick the right one. (1 lesson)
- Algorithms in modern architectures - Rate limiting, consistent hashing, routing tries and Bloom filters: the algorithms inside an API gateway. (4 lessons)
Hands-on Practical use cases
- Search box with autocomplete
- Ride dispatch service
- A fast lookup cache
- Delivery route planner
- Build pipeline scheduler
- API gateway protection
- Text editor with undo and redo
All tutorials · Practice quizzes