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
- 0128 min
Python for Data Science
BeginnerComing soonThe subset of Python that matters: comprehensions, iterators, generators, decorators and typing.
- 0230 min
NumPy Essentials
BeginnerComing soonndarrays, dtypes, vectorisation, broadcasting rules, views vs copies, and why loops are slow.
Assumes: Python for Data Science
- 0332 min
Pandas Essentials
BeginnerComing soonSeries and DataFrames, indexing, groupby-apply-combine, joins, reshaping and time indexing.
Assumes: NumPy Essentials
- 0430 min
Complexity Analysis
IntermediateComing soonBig-O, big-Theta and big-Omega, amortised analysis, and deriving recurrences with the master theorem.
- 0526 min
Arrays and Strings
BeginnerComing soonContiguous storage, dynamic array growth, two-pointer and sliding-window patterns.
Assumes: Complexity Analysis
- 0624 min
Stacks
BeginnerComing soonLIFO semantics, array and linked implementations, and applications: expression evaluation, parsing, monotonic stacks.
Assumes: Arrays and Strings
- 0724 min
Queues and Deques
BeginnerComing soonFIFO queues, circular buffers, double-ended queues and priority queue contrasts.
Assumes: Stacks
- 0828 min
Linked Lists
BeginnerComing soonSingly, doubly and circular lists, pointer manipulation, cycle detection and list reversal.
Assumes: Arrays and Strings
- 0930 min
Hash Tables
IntermediateComing soonHash functions, load factor, chaining vs open addressing, and the average/worst-case gap.
Assumes: Arrays and Strings
- 1028 min
Trees and Traversals
BeginnerComing soonTerminology, binary tree properties, and pre-, in-, post- and level-order traversals recursively and iteratively.
Assumes: Queues and Deques
- 1128 min
Binary Search Trees
IntermediateComing soonBST invariant, insert/search/delete, degenerate cases, and why balancing matters.
Assumes: Trees and Traversals
- 1228 min
Heaps and Priority Queues
IntermediateComing soonHeap property, array representation, sift up/down, heapify in linear time, and heapsort.
Assumes: Trees and Traversals
- 1322 min
Tries and Prefix Structures
IntermediateComing soonPrefix trees for string search, space/time trade-offs, and autocomplete applications.
Assumes: Trees and Traversals
- 1430 min
Recursion and Backtracking
IntermediateComing soonBase cases, recursion trees, stack depth, memoisation, and systematic backtracking search.
Assumes: Complexity Analysis
- 1524 min
Linear and Binary Search
BeginnerComing soonSequential search, binary search with correct invariants, and the off-by-one errors that plague it.
Assumes: Complexity Analysis
- 1628 min
Selection, Bubble and Insertion Sort
BeginnerComing soonThe three quadratic sorts traced step by step, with comparison and swap counts.
Assumes: Linear and Binary Search
- 1726 min
Merge Sort
IntermediateComing soonDivide and conquer, the merge step, the recurrence solution, and stability and space cost.
Assumes: Selection, Bubble and Insertion Sort
- 1828 min
Quick Sort
IntermediateComing soonPartitioning schemes, pivot selection, average vs worst case, and randomisation.
Assumes: Merge Sort
- 1926 min
Heap Sort and Linear-Time Sorts
IntermediateComing soonHeapsort, then counting, radix and bucket sort, and the comparison-sort lower bound they escape.
Assumes: Heaps and Priority Queues · Quick Sort
- 2026 min
Divide and Conquer
AdvancedComing soonThe general paradigm, binary-search variants, closest pair, and Strassen multiplication.
Assumes: Merge Sort
- 2128 min
Greedy Algorithms
IntermediateComing soonExchange arguments, activity selection, Huffman coding, and when greed provably works.
Assumes: Heaps and Priority Queues
- 2234 min
Dynamic Programming
AdvancedComing soonOptimal substructure, overlapping subproblems, memoisation vs tabulation, and classic DP tables.
Assumes: Recursion and Backtracking
- 2324 min
Graph Representations
BeginnerComing soonAdjacency matrix vs adjacency list, edge lists, directed/undirected/weighted variants and space trade-offs.
Assumes: Hash Tables
- 2430 min
Breadth-First and Depth-First Search
IntermediateComing soonBFS and DFS traced on worked graphs, the trees they induce, and edge classification.
Assumes: Graph Representations
- 2522 min
Topological Sorting
IntermediateComing soonOrdering a DAG via Kahn's algorithm and DFS finish times, plus cycle detection.
Assumes: Breadth-First and Depth-First Search
- 2634 min
Shortest Path Algorithms
AdvancedComing soonDijkstra, Bellman–Ford and Floyd–Warshall traced numerically, with negative-weight handling.
Assumes: Breadth-First and Depth-First Search
- 2728 min
Minimum Spanning Trees
AdvancedComing soonKruskal and Prim, the cut and cycle properties, and union–find with path compression.
Assumes: Shortest Path Algorithms