- DSA is the course you take to learn data structures and algorithms, from language basics to graphs and dynamic programming.
- DSA for Placements (Level 0 to Level 4) is the ladder you climb to prepare for interviews and placement rounds.
- Competitive Programming is the five-phase path for contest speed and rating.
DSA: learn the subject
The DSA course is the full curriculum. It starts at language basics and works up to the advanced algorithms, with every topic broken into theory, guided implementation problems, and practice problems you solve yourself.Foundations
Foundations
Introduction to DSA, C++ Language Basics, Patterns, Complexity Analysis, C++ STL, Maths Basics, and String Basics — everything you need before algorithms make sense.
Core techniques
Core techniques
Recursion, Hashing, Sorting, Arrays, Binary Search, Bit Manipulation, Greedy Algorithms, and Sliding Window & Two Pointers.
Data structures
Data structures
Stacks & Queues, Linked List, Binary Trees, Binary Search Tree, Heaps, and Tries.
Advanced algorithms
Advanced algorithms
Graphs, Dynamic Programming, and advanced string algorithms.
DSA for Placements: Level 0 to Level 4
This is the interview and placement-preparation ladder. Each level is deliberately narrow, and every concept comes with Guided Practice Questions first and Self Practice Questions after, so you practise the pattern immediately rather than reading ahead.1
Level 0 — Programming foundations
C++ syntax and control flow, then arrays, strings, and functions, followed by Complexity Analysis and Patterns. Start here if you are new to coding or rusty.
2
Level 1 — STL and the built-in types
Maths, then the C++ Standard Template Library in depth — stacks, queues, sets, maps, and the algorithms and utilities around them — plus Arrays and Strings.
3
Level 2 — Recursion and searching
Recursion from first principles, then Sorting and Binary Search.
4
Level 3 — Optimisation patterns
Two Pointers and Sliding Window in all its shapes (fixed-size, opposite-ends, same-direction, variable-size), then Greedy Algorithms.
5
Level 4 — Bit tricks and linear structures
Bit Manipulation, including XOR techniques, and Stacks & Queues.
Past Contest Problems
A separate set of problems drawn from contests that have already run, so you can attempt them at your own pace and check your approach afterwards.Competitive Programming: five phases
The CP track takes you from your first C++ program to the advanced structures and graph techniques that decide top ranks in contests.1
Phase 1: Programming Foundations in C++
Set up your toolchain and get fluent with C++ syntax, standard library containers, and the idioms that make CP code fast to write.
2
Phase 2: Algorithmic Foundations
Build the reflexes for the recurring techniques that carry across contest problems and interview rounds.
3
Phase 3: Data Structures & Discrete Math
Level up into the data structures that separate contest solvers from casual coders, alongside the number theory and combinatorics that contest math is built on.
4
Phase 4: Dynamic Programming & Graph Theory
Work through DP from memoisation to state design, then graph theory from traversal to shortest paths, with worked examples and drills.
5
Phase 5: Advanced Data Structures and Algorithms
Finish with the advanced structures and algorithms — segment trees, tries, and beyond — that unlock hard, higher-rated contest problems.
Where to practice next
DSA Sheet
A 400-problem pattern-based sheet with AI Tutor, notes, streak calendar, and leaderboard.
CP Ladder
Rating-banded contest problems with topic filters, Guided Mode, timer, and global heat map.
