Loading

Learn Coding Interview

Master the patterns behind coding interview problems, from hash maps to dynamic programming.

Start learning 13 lessons · about 4.5 hours · free
About this track

Coding interviews ask you to solve algorithm problems while explaining your thinking. This track teaches a repeatable problem-solving routine, Big O analysis, and the patterns that unlock most interview questions: hash maps, two pointers, sliding windows, binary search, stacks, linked lists, heaps, trees, graphs, dynamic programming, and backtracking. Every lesson ends with a classic interview problem you solve in Python, right in your browser.

Before you start
  • Comfort writing basic Python: loops, functions, lists, and dictionaries.
  • No prior algorithms course needed.
  • The first exercise run loads the Python runtime in your browser.
  1. Unit 1 · 0/2 lessons

    Approach and complexity

    A problem-solving routine and Big O analysis. Badge: Problem solver

    1. 0x001Solve problems out loudUse a repeatable routine from clarifying questions to tested code. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
    2. 0x102Analyze time and space complexityDescribe how running time and memory grow with input size. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
  2. Unit 2 · 0/4 lessons

    Arrays and strings

    Hash maps, two pointers, sliding windows, and binary search. Badge: Pattern spotter

    1. 0x203Trade memory for speed with hash mapsUse dictionaries and sets to replace nested loops with lookups. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
    2. 0x304Walk inward with two pointersUse two indices to solve sorted-array and palindrome problems in O(n). 20 min 0/1 exercises solved 20 min 0/1 exercises solved
    3. 0x405Track a range with a sliding windowGrow and shrink a window to solve substring and subarray problems in O(n). 20 min 0/1 exercises solved 20 min 0/1 exercises solved
    4. 0x506Halve the search space with binary searchSearch sorted data - or any monotonic condition - in O(log n). 20 min 0/1 exercises solved 20 min 0/1 exercises solved
  3. Unit 3 · 0/3 lessons

    Stacks, lists, and heaps

    Stacks, queues, linked lists, and priority queues. Badge: Structure builder

    1. 0x607Match and order with stacks and queuesUse LIFO and FIFO structures for nesting, undo, and level-by-level work. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
    2. 0x708Rewire linked listsReverse, merge, and detect cycles by moving node pointers carefully. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
    3. 0x809Find the top k with heapsUse a priority queue to get the smallest or largest items quickly. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
  4. Unit 4 · 0/2 lessons

    Trees and graphs

    Recursive tree traversal, BFS, and DFS. Badge: Graph explorer

    1. 0x9010Traverse trees recursivelySolve binary tree problems by combining answers from subtrees. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
    2. 0xA011Explore graphs with BFS and DFSModel problems as graphs and search them without revisiting nodes. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
  5. Unit 5 · 0/2 lessons

    Advanced techniques

    Dynamic programming and backtracking. Badge: Algorithm architect

    1. 0xB012Reuse answers with dynamic programmingBreak problems into overlapping subproblems and solve each once. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
    2. 0xC013Generate choices with backtrackingBuild candidates step by step and undo choices to explore every option. 20 min 0/1 exercises solved 20 min 0/1 exercises solved
Did you like the lesson? 😆👍
Consider a donation to support our work: