Skip to content
Courses
Computer Science₹1,299

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.

3 modules7 lessons2 hrAdvanced

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