Course · beginner$4.49 (≈ ₹550) · lifetime

DSA in Java, visualized

Data structures and algorithms you actually see run - line by line, in Java.

Taught by Faisal Ahmad · Founder, Flame

The complete DSA course, taught the Flame way: every algorithm runs on screen in Java, one step at a time, so you watch the variables move and feel why one approach is fast and another crawls. From Big-O to graphs and dynamic programming, built for interviews and for actually understanding. Chapter 1 is free; unlock the rest once.

13 modules37 lessons ~11h total
Start lesson 1: What 'fast' really means

What you'll be able to do

  • Read any algorithm's Big-O cost on sight, and pick the faster approach
  • Implement the core data structures in Java from scratch, not from memory
  • Recognise the pattern behind an interview problem and reach for the right tool
  • Debug your own code by watching exactly what it does, step by step

Syllabus

Module 3

Recursion and the call stack

  • 08
    Thinking recursivelyBase case, recursive case, and trusting the smaller call - watched on the live call stack.
    18 min soon
  • 09
    Reading the call stackHow frames pile up and unwind, and where stack overflow really comes from.
    18 min soon
  • 10
    BacktrackingTrying, failing, and undoing - the recursive pattern behind permutations and puzzles.
    18 min soon
Module 4

Sorting

  • 11
    Bubble and insertion sortThe O(n squared) sorts, watched - simple, slow, and a perfect warm-up.
    18 min soon
  • 12
    Merge sortDivide, sort halves, merge - the O(n log n) workhorse, animated end to end.
    18 min soon
  • 13
    Quick sortPartitioning around a pivot, the average O(n log n), and the worst case to avoid.
    18 min soon
  • 14
    Which sort, whenStability, memory, and why your language's built-in sort makes its choices.
    18 min soon
Module 5

Searching and hashing

  • 15
    Binary search, properlyOff-by-one traps, and searching on the answer instead of the array.
    18 min soon
  • 16
    Hash maps from scratchBuckets, collisions, and how a good hash turns O(n) lookups into O(1).
    18 min soon
  • 17
    Solving with hashingCounting, de-duplicating, and the 'seen before?' pattern that kills nested loops.
    18 min soon
Module 6

Linked lists

  • 18
    Building a linked listNodes and pointers, and the O(1) insert that arrays can't match.
    18 min soon
  • 19
    Reversing and detecting cyclesPointer surgery and Floyd's tortoise-and-hare, step by step.
    18 min soon
Module 7

Stacks and queues

  • 20
    StacksLast in, first out - matching brackets, undo, and the call stack you've been watching.
    18 min soon
  • 21
    Queues and dequesFirst in, first out, and the double-ended queue behind sliding-window maxima.
    18 min soon
Module 8

Trees

  • 22
    Trees and traversalParents, children, and the three ways to walk a tree - drawn as it happens.
    18 min soon
  • 23
    Binary search treesOrdered trees, O(log n) lookups, and the balance problem.
    18 min soon
  • 24
    Common tree problemsHeight, diameter, and lowest common ancestor, solved with clean recursion.
    18 min soon
Module 9

Heaps and priority queues

  • 25
    The heapA tree in an array that always knows its smallest element - in O(log n).
    18 min soon
  • 26
    Top-K and streamingUsing a heap to answer 'the k best' without sorting everything.
    18 min soon
Module 10

Graphs

  • 27
    Representing graphsAdjacency lists vs matrices, and the shape of almost every hard problem.
    18 min soon
  • 28
    BFS and DFSThe two ways to explore a graph, animated - and when each one wins.
    18 min soon
  • 29
    Shortest pathsDijkstra's algorithm, watched as the frontier expands out from the source.
    18 min soon
  • 30
    Graph problem patternsConnected components, cycle detection, and topological order.
    18 min soon
Module 11

Greedy algorithms

  • 31
    The greedy ideaTaking the locally best step - when it works, and the trap when it doesn't.
    18 min soon
  • 32
    Classic greedy problemsInterval scheduling and coin change, with the proof of why greedy is safe.
    18 min soon
Module 12

Dynamic programming

  • 33
    What DP really isOverlapping subproblems and memoization - recursion that stops repeating itself.
    18 min soon
  • 34
    Bottom-up tablesFilling a grid instead of recursing, watched cell by cell.
    18 min soon
  • 35
    The DP patternsKnapsack, longest common subsequence, and how to spot a DP in the wild.
    18 min soon
Module 13

Putting it together

  • 36
    Cracking the interviewTurning a vague question into a plan: clarify, brute-force, optimise, test.
    18 min soon
  • 37
    Mixed problem gauntletA final set that mixes every tool - and the animation to prove your solution.
    18 min soon

Start Chapter 1 free

The first chapter is yours to watch, in full, at no cost. Chapters release over time; one $4.49 (≈ ₹550) lifetime payment unlocks every chapter after it - including the ones still being written. No subscription.

Start free