From fundamentals to
competitive programming.
Follow a structured path through programming fundamentals, core data structures and algorithms, advanced problem solving, and competitive programming across 43 weekly modules.
Curriculum Overview
Click a phase to jump to its modulesFoundation
Build strong programming fundamentals, problem-solving habits, and core Python skills.
Phase 1 — Core DSA
Master essential data structures and algorithms through structured problem solving.
Phase 2 — Advanced DSA
Explore graphs, dynamic programming, trees, greedy algorithms, and advanced problem solving.
Phase 3 — Competitive Programming
Put your DSA skills to work through advanced techniques and competitive programming.
Foundation
Establish core programming competencies in Python, best coding practices, clean architecture, complexity analysis (Big-O), the 7-step problem-solving methodology, and essential built-in data structures (Lists, Tuples, Sets, Dictionaries, Classes).
Phase 1 — Core DSA
Master foundational data structures and fundamental algorithmic paradigms: Arrays, Matrices, Elementary Sorting, Two Pointers, Sliding Window, Prefix Sum, Singly/Doubly Linked Lists, Stacks, Queues, Monotonic Structures, Recursion Fundamentals, and Binary Search.
Phase 2 — Advanced DSA
Dive deep into non-linear data structures, advanced recursion, and foundational graph algorithms: Binary Trees, Binary Search Trees (BST), Backtracking, Divide & Conquer, Graph Representations, Depth-First Search (DFS), Breadth-First Search (BFS), Heaps/Priority Queues, Greedy Optimization, Topological Sort, and Dynamic Programming (Top-Down & Bottom-Up).
Phase 3 — Competitive Programming
Tackle advanced competitive programming paradigms and specialized data structures: Bitwise Operations, Disjoint Set Union (Union-Find), Advanced & Non-Comparison Sorting, Numerics & Number Theory, Trie (Prefix Tree), All-Pairs & Single-Source Shortest Paths (Dijkstra, Bellman-Ford, Floyd-Warshall), and Advanced String Algorithms (KMP, Rabin-Karp, Z-Algorithm).