Skip to content
VibeFormer

MODULE 05

Programming, Data Structures and Algorithms

Python for data work, then the full DSA syllabus: complexity, linear structures, trees, hashing, sorting, searching and graph algorithms.

27 lessons~12h reading

  1. 01

    Python for Data Science

    BeginnerComing soon

    The subset of Python that matters: comprehensions, iterators, generators, decorators and typing.

    28 min
  2. 02

    NumPy Essentials

    BeginnerComing soon

    ndarrays, dtypes, vectorisation, broadcasting rules, views vs copies, and why loops are slow.

    Assumes: Python for Data Science

    30 min
  3. 03

    Pandas Essentials

    BeginnerComing soon

    Series and DataFrames, indexing, groupby-apply-combine, joins, reshaping and time indexing.

    Assumes: NumPy Essentials

    32 min
  4. 04

    Complexity Analysis

    IntermediateComing soon

    Big-O, big-Theta and big-Omega, amortised analysis, and deriving recurrences with the master theorem.

    30 min
  5. 05

    Arrays and Strings

    BeginnerComing soon

    Contiguous storage, dynamic array growth, two-pointer and sliding-window patterns.

    Assumes: Complexity Analysis

    26 min
  6. 06

    Stacks

    BeginnerComing soon

    LIFO semantics, array and linked implementations, and applications: expression evaluation, parsing, monotonic stacks.

    Assumes: Arrays and Strings

    24 min
  7. 07

    Queues and Deques

    BeginnerComing soon

    FIFO queues, circular buffers, double-ended queues and priority queue contrasts.

    Assumes: Stacks

    24 min
  8. 08

    Linked Lists

    BeginnerComing soon

    Singly, doubly and circular lists, pointer manipulation, cycle detection and list reversal.

    Assumes: Arrays and Strings

    28 min
  9. 09

    Hash Tables

    IntermediateComing soon

    Hash functions, load factor, chaining vs open addressing, and the average/worst-case gap.

    Assumes: Arrays and Strings

    30 min
  10. 10

    Trees and Traversals

    BeginnerComing soon

    Terminology, binary tree properties, and pre-, in-, post- and level-order traversals recursively and iteratively.

    Assumes: Queues and Deques

    28 min
  11. 11

    Binary Search Trees

    IntermediateComing soon

    BST invariant, insert/search/delete, degenerate cases, and why balancing matters.

    Assumes: Trees and Traversals

    28 min
  12. 12

    Heaps and Priority Queues

    IntermediateComing soon

    Heap property, array representation, sift up/down, heapify in linear time, and heapsort.

    Assumes: Trees and Traversals

    28 min
  13. 13

    Tries and Prefix Structures

    IntermediateComing soon

    Prefix trees for string search, space/time trade-offs, and autocomplete applications.

    Assumes: Trees and Traversals

    22 min
  14. 14

    Recursion and Backtracking

    IntermediateComing soon

    Base cases, recursion trees, stack depth, memoisation, and systematic backtracking search.

    Assumes: Complexity Analysis

    30 min
  15. 15

    Linear and Binary Search

    BeginnerComing soon

    Sequential search, binary search with correct invariants, and the off-by-one errors that plague it.

    Assumes: Complexity Analysis

    24 min
  16. 16

    Selection, Bubble and Insertion Sort

    BeginnerComing soon

    The three quadratic sorts traced step by step, with comparison and swap counts.

    Assumes: Linear and Binary Search

    28 min
  17. 17

    Merge Sort

    IntermediateComing soon

    Divide and conquer, the merge step, the recurrence solution, and stability and space cost.

    Assumes: Selection, Bubble and Insertion Sort

    26 min
  18. 18

    Quick Sort

    IntermediateComing soon

    Partitioning schemes, pivot selection, average vs worst case, and randomisation.

    Assumes: Merge Sort

    28 min
  19. 19

    Heap Sort and Linear-Time Sorts

    IntermediateComing soon

    Heapsort, then counting, radix and bucket sort, and the comparison-sort lower bound they escape.

    Assumes: Heaps and Priority Queues · Quick Sort

    26 min
  20. 20

    Divide and Conquer

    AdvancedComing soon

    The general paradigm, binary-search variants, closest pair, and Strassen multiplication.

    Assumes: Merge Sort

    26 min
  21. 21

    Greedy Algorithms

    IntermediateComing soon

    Exchange arguments, activity selection, Huffman coding, and when greed provably works.

    Assumes: Heaps and Priority Queues

    28 min
  22. 22

    Dynamic Programming

    AdvancedComing soon

    Optimal substructure, overlapping subproblems, memoisation vs tabulation, and classic DP tables.

    Assumes: Recursion and Backtracking

    34 min
  23. 23

    Graph Representations

    BeginnerComing soon

    Adjacency matrix vs adjacency list, edge lists, directed/undirected/weighted variants and space trade-offs.

    Assumes: Hash Tables

    24 min
  24. 24

    Breadth-First and Depth-First Search

    IntermediateComing soon

    BFS and DFS traced on worked graphs, the trees they induce, and edge classification.

    Assumes: Graph Representations

    30 min
  25. 25

    Topological Sorting

    IntermediateComing soon

    Ordering a DAG via Kahn's algorithm and DFS finish times, plus cycle detection.

    Assumes: Breadth-First and Depth-First Search

    22 min
  26. 26

    Shortest Path Algorithms

    AdvancedComing soon

    Dijkstra, Bellman–Ford and Floyd–Warshall traced numerically, with negative-weight handling.

    Assumes: Breadth-First and Depth-First Search

    34 min
  27. 27

    Minimum Spanning Trees

    AdvancedComing soon

    Kruskal and Prim, the cut and cycle properties, and union–find with path compression.

    Assumes: Shortest Path Algorithms

    28 min