Advanced Data Structures: Choosing Well Under Real Constraints
Hashing, trees, heaps and graphs — built, benchmarked, and chosen with a procedure you can defend
Most data-structure teaching stops at "a hash map is O(1), a tree is O(log n)" and leaves you to guess which one your problem needs. This course is about the second half: the part where the constraints decide, the constant factors show up in a profile, and you have to defend the choice. Every structure here is implemented from scratch in TypeScript — the hash table with resizing, the red-black tree with all three fix-up cases, the array-backed binary heap, BFS and Dijkstra — and then measured rather than asserted about. The questions are the ones that actually come up: why adversarial hash collisions are a denial-of-service vector, when a binary search loses to a linear scan on cache behaviour, and when an adjacency matrix is genuinely the right answer. It is a paid course because it assumes you can already program and already have the C course's grounding in pointers and memory. If you are not comfortable reading a loop that walks a linked structure, start with C Programming first.
What you will be able to do
- State what a big-O bound does and does not claim, including constants, tightness and space
- Explain why a hash table is O(1) in expectation and what an attacker can do about that
- Implement and explain every case of the red-black tree fix-up after an insert
- Build a binary heap in O(n) and use it to solve top-k problems in O(n log k) without sorting
- Choose between an adjacency list and an adjacency matrix from the graph's density
- Work through the five constraint questions before choosing a structure, and write down what would change your mind
What is included
- 3 modules
- 7 lessons
- 2 hr of material
- Certificate on completion
₹1,299