Compile Ready
Learning/DSA

Data Structures & Algorithms

A structured, interview-focused path through every core DSA topic — from arrays and hashing to dynamic programming and advanced graphs. Each track teaches the pattern first, then the algorithm, then a clean Java 17 implementation, with dry runs and interview guidance.

17

Topics

10

Available now

266+

Curated problems

158h

Est. study time

Learning roadmap

A recommended path from foundations to optimisation. Each phase builds on the last.

  1. 1

    Foundations

    Easy

    Build fluency with the data structures every other pattern relies on: arrays, hashing, and pointer techniques.

    Arrays & HashingLiveHashMap & HashSetTwo PointersSliding WindowLive
  2. 2

    Searching & Sorting

    Medium

    Halve the search space and use ordering as a pre-processing step that unlocks greedy and two-pointer solutions.

    Binary SearchSortingIntervalsLiveGreedy AlgorithmsLive
  3. 3

    Linear Structures

    Medium

    Model order and recency with linked lists, stacks, and queues — including the monotonic-stack and deque patterns.

    Linked ListLiveStackQueue & DequeHeap / Priority QueueLive
  4. 4

    Trees & Tries

    Medium

    Recurse over hierarchical data — binary trees, BST invariants, and prefix trees for fast word lookup.

    Trees & BSTLiveTrie
  5. 5

    Search & Graphs

    Hard

    Explore state spaces exhaustively with backtracking, then model relationships and paths with graph algorithms.

    BacktrackingLiveGraph AlgorithmsLive
  6. 6

    Optimization

    Hard

    The capstone: recognise overlapping subproblems and optimal substructure to solve with dynamic programming.

    Dynamic ProgrammingLive

Arrays & Hashing

Medium

The bedrock: scanning, prefix sums, and hashing for O(1) lookups.

18 problems13h
0%

Two Pointers

Easy
Soon

Converging and fast/slow pointers to turn O(n²) scans into O(n).

11 problems6h

Binary Search

Medium
Soon

Halving the search space — on arrays and on the answer itself.

12 problems7h

Sorting

Medium
Soon

Comparison sorts, counting sorts, and sorting as a pre-processing step.

10 problems6h

HashMap & HashSet

Easy
Soon

Trade space for time: constant-time membership and grouping.

11 problems6h

Linked List

Medium

Pointer surgery: reversal, cycle detection, and merging.

17 problems10h
0%

Stack

Medium
Soon

LIFO thinking: monotonic stacks and expression parsing.

11 problems6h

Queue & Deque

Medium
Soon

FIFO and sliding windows with a double-ended queue.

9 problems5h

Trees & BST

Medium

Traversals, recursion, and binary-search-tree invariants.

24 problems14h
0%

Trie

Medium
Soon

Prefix trees for fast word lookup and autocomplete.

7 problems4h

Heap / Priority Queue

Medium

Always-available min/max: top-k, merging, and scheduling.

14 problems10h
0%

Intervals

Medium

Sort, merge, and sweep overlapping ranges.

12 problems7h
0%

Sliding Window

Medium

Expand and contract a window for subarray/substring problems.

17 problems11h
0%

Backtracking

Hard

Systematic search: build, recurse, undo.

17 problems12h
0%

Greedy Algorithms

Medium

Locally optimal choices that prove globally optimal.

21 problems11h
0%

Dynamic Programming

Hard

Identify DP patterns under interview pressure — state, transition, and space optimization.

30 problems18h
0%

Graph Algorithms

Hard

Intuition-first graph mastery — traversal, union-find, shortest paths, and advanced graphs.

25 problems12h
0%