Complete Syllabus

10 Modules. 65+ Topics. Data Structures + Algorithms + Problem-Solving Techniques

Click any module to expand. Module 2 (Problem-Solving Techniques) is the most important addition — the mental frameworks that turn data structure knowledge into interview problem-solving ability. Without techniques, knowing "what a tree is" doesn't help you solve tree problems under pressure.

01

Complexity Analysis & Mathematical Foundations

How to measure algorithm efficiency and the math that underpins DSA

1.1 Big-O, Big-Θ, Big-Ω Notation

Formal definitions of asymptotic bounds. Analysing worst-case (O), average-case (Θ), and best-case (Ω). Common complexities: O(1), O(log n), O(n), O(n log n), O(n²), O(2ⁿ). How to determine complexity from code by counting loops and recursive calls.

1.2 Space Complexity & Auxiliary Space

Measuring memory usage: input space vs auxiliary space. Stack space in recursion (O(depth)). In-place vs out-of-place algorithms. Trade-offs: time-space trade-off decisions that interviewers test.

1.3 Recursion & Recurrence Relations

Recursive thinking: base case + recursive case. Call stack visualisation. Recurrence relations: T(n) = 2T(n/2) + O(n). Master theorem for solving recurrences. Tail recursion and optimisation. Stack overflow and how to avoid it.

1.4 Mathematics for DSA

GCD (Euclidean algorithm), LCM, modular arithmetic, fast exponentiation (binary exponentiation). Sieve of Eratosthenes for primes. Combinatorics basics (nCr, nPr). Catalan numbers. Bit representation of integers. Why math matters for DP, number theory problems, and competitive coding.

1.5 Bit Manipulation

AND, OR, XOR, NOT, left/right shifts. Check if bit is set, set/clear/toggle a bit. Count set bits (Brian Kernighan's algorithm). Check power of 2. XOR tricks: find single number, swap without temp. Bitmask for subsets. Interview favourite at Google, Amazon, DE Shaw.

Placement relevance: "What's the time complexity?" is asked after EVERY coding problem in interviews. Bit manipulation questions are favourites at Google, Amazon, and DE Shaw. Mathematical foundations underpin DP and number theory problems.
02

Problem-Solving Techniques & Patterns

The mental frameworks that turn knowledge into interview performance — the most important module

2.1 Two Pointers Technique

Two pointers moving inward (pair sum in sorted array), outward (expand around centre for palindromes), or same direction (slow/fast for cycle detection). Container with most water, 3Sum, remove duplicates in-place. The most versatile O(n) technique for array/string problems.

2.2 Sliding Window

Fixed-size window (max sum subarray of size k) and variable-size window (smallest subarray with sum ≥ target, longest substring without repeating characters). Template pattern: expand right, shrink left when condition breaks. Converts O(n²) brute force to O(n).

2.3 Binary Search on Answer

Beyond searching arrays — binary search on the ANSWER space. "What's the minimum capacity to ship packages in D days?" "Find the smallest divisor given a threshold." Recognising when a problem has monotonic feasibility. Template: lo, hi, check(mid).

2.4 Divide and Conquer

Split problem into subproblems, solve recursively, combine results. Merge sort (classic D&C), count inversions, closest pair of points, maximum subarray (Kadane vs D&C). Recognising when a problem splits cleanly into independent halves.

2.5 Prefix Sum & Difference Array

Prefix sum for O(1) range queries. 2D prefix sums for submatrix queries. Difference arrays for range update operations. Kadane's algorithm as a prefix sum variant. Applications: subarray sum equals k, equilibrium index.

2.6 Hashing for Problem Solving

Hash maps for O(1) lookup. Frequency counting. Two-sum pattern (complement lookup). Group anagrams. Subarray sum patterns. Hash sets for duplicate detection. When hashing beats sorting — and when it doesn't (worst-case O(n) collision).

2.7 Interval Techniques

Merge overlapping intervals, insert interval, meeting rooms (can attend all? minimum rooms needed). Sweep line algorithm for interval scheduling. Sorting by start/end time. Greedy interval selection. Problems companies love: merge intervals, non-overlapping intervals.

2.8 Matrix / Grid Traversal Patterns

DFS/BFS on 2D grids. Number of islands, flood fill, shortest path in binary matrix, rotting oranges. Direction vectors (dx[], dy[]). When to use DFS vs BFS on grids. Boundary conditions and visited tracking. One of the most asked problem categories at Amazon.

2.9 How to Approach Unknown Problems

The 5-step framework: (1) Understand — restate, examples, edge cases. (2) Classify — which pattern does this match? (3) Plan — pseudocode before coding. (4) Code — clean, modular, named variables. (5) Test — trace through examples, check edge cases. Thinking aloud in interviews. Managing time when stuck.

Placement relevance: THIS is what separates students who "know DSA" from students who "can solve problems." Every product company interview is pattern recognition under pressure. Two pointers, sliding window, binary search on answer, and interval merging cover 60%+ of medium-difficulty interview problems. The 5-step framework is how you structure your thinking aloud.
03

Arrays & Strings

The most tested data structures — 40%+ of all coding interview problems involve arrays or strings

3.1 Array Fundamentals & Operations

Insertion, deletion, searching in unsorted and sorted arrays. Rotation (left, right, by k positions). Dutch National Flag problem (3-way partition). Next permutation. Maximum subarray sum (Kadane's). Stock buy/sell variants.

3.2 2D Arrays & Matrix Problems

Matrix traversal: row-major, column-major, diagonal, spiral order. Matrix rotation (90°, 180°). Transpose. Search in sorted matrix (row-wise + column-wise sorted). Set matrix zeroes. The matrix is a grid — DFS/BFS apply here too.

3.3 String Algorithms

Reversal, palindrome checking, anagram detection & grouping. Longest palindromic substring (expand around centre + Manacher's). String to integer (atoi). String compression. Rabin-Karp hashing for pattern matching.

3.4 Advanced String Matching

KMP algorithm (failure function + O(n+m) matching). Z-algorithm. Rabin-Karp (rolling hash). When to use which: KMP for single pattern, Rabin-Karp for multiple patterns. Suffix arrays and suffix trees (conceptual).

Placement relevance: Array and string problems constitute 40%+ of coding interview questions across all companies. Two-sum, stock buy/sell, rotate array, longest substring, and group anagrams are among the most asked problems on LeetCode and in real interviews.
04

Linked Lists, Stacks & Queues

Linear data structures for dynamic data and LIFO/FIFO processing

4.1 Singly & Doubly Linked Lists

Node structure, insertion (head, tail, middle), deletion, search. Reverse a linked list (iterative + recursive — the #1 linked list question). Merge two sorted lists. Find middle element (slow/fast pointers). Remove nth from end.

4.2 Linked List Advanced Problems

Detect and find cycle entry (Floyd's algorithm). Palindrome linked list. Intersection of two lists. Flatten a multilevel linked list. LRU Cache implementation (HashMap + Doubly Linked List). Deep copy with random pointers.

4.3 Stacks: Applications & Patterns

Stack implementation (array, linked list). Valid parentheses. Evaluate postfix/prefix expressions. Implement queue using stacks. Min stack (O(1) getMin). Largest rectangle in histogram. Daily temperatures.

4.4 Monotonic Stack & Monotonic Queue

Next greater element (left, right, circular). Stock span problem. Trapping rain water. Sliding window maximum (monotonic deque). When to use monotonic structures — recognising the "maintain order" pattern.

4.5 Queues & Deques

Queue implementation. Circular queue. Priority of operations (BFS uses queue, DFS uses stack). Deque — O(1) operations at both ends. Implementing stack using queue. Design a circular buffer.

Placement relevance: Reverse a linked list, detect cycle, valid parentheses, and LRU Cache are top-20 most asked interview problems. Monotonic stack problems (next greater element, largest rectangle in histogram) are Amazon and Google favourites.
05

Searching & Sorting Algorithms

Finding and ordering data — foundational algorithms with wide application

5.1 Binary Search & Variations

Classic binary search. First/last occurrence. Search in rotated sorted array. Peak element. Square root (integer). Binary search on answer (covered in Module 2 — applied here). lower_bound/upper_bound (STL).

5.2 Comparison-Based Sorting

Bubble, Selection, Insertion (stable, O(n²)). Merge Sort (stable, O(n log n), extra space). Quick Sort (in-place, O(n log n) average, pivot strategies). Heap Sort (in-place, O(n log n)). Stability and when it matters.

5.3 Non-Comparison & Specialised Sorting

Counting Sort, Radix Sort, Bucket Sort — O(n) when constraints allow. When non-comparison sorting beats quicksort. Quickselect for kth smallest/largest (O(n) average). Dutch National Flag (3-way partition for repeated elements).

5.4 Sorting Applications

Merge sort for count inversions. Custom comparators for sorting objects. Sorting + two pointers (3Sum, 4Sum). Sorting intervals by start/end time. When to sort first vs when to use hash maps.

Placement relevance: "Implement merge sort" and "search in rotated sorted array" are classic interview problems. Binary search variations appear in 30%+ of medium/hard interview questions. Understanding sorting stability and choosing the right sort is tested in MCQs.
06

Trees & Binary Search Trees

Hierarchical data structures — the backbone of advanced DSA

6.1 Binary Tree Fundamentals

Node structure, tree terminology (root, leaf, height, depth, level). Full, complete, perfect, balanced binary trees. Maximum nodes at level k, maximum nodes in tree of height h. Tree construction from traversals.

6.2 Tree Traversals

DFS traversals: inorder (left-root-right), preorder (root-left-right), postorder (left-right-root). BFS: level-order traversal. Iterative traversal using stack (Morris traversal for O(1) space). Zigzag level-order. Vertical order traversal.

6.3 Binary Tree Problems

Height/depth, diameter, check balanced, mirror/symmetric tree, path sum, LCA (Lowest Common Ancestor), serialize/deserialize, maximum path sum, right side view, flatten to linked list. These are the 15 most asked tree problems.

6.4 Binary Search Trees

BST property (left < root < right). Search, insert, delete in BST. Inorder traversal gives sorted order. Validate BST. Kth smallest element. Floor/ceiling in BST. Construct BST from preorder/sorted array.

6.5 Balanced BSTs & Advanced Trees

AVL trees (rotations: LL, RR, LR, RL). Red-black tree concepts (used internally by set/map in C++, TreeMap in Java). B-trees (conceptual — database indexing). Why self-balancing matters: O(log n) guaranteed vs O(n) worst case.

Placement relevance: Tree problems appear in 25%+ of product company interviews. LCA, diameter, path sum, validate BST, and serialize/deserialize are top-15 most asked. Understanding traversals and recursion on trees is fundamental.
07

Heaps, Priority Queues & Hashing

Efficient access to min/max and O(1) lookup — enabling top-K and frequency patterns

7.1 Heaps: Min-Heap & Max-Heap

Complete binary tree property. Heapify (sift-up, sift-down). Build heap in O(n). Insert and extract in O(log n). Heap sort. Priority queue implementation. Min-heap vs max-heap — when to use which.

7.2 Heap Applications: Top-K Pattern

Kth largest/smallest element. Top K frequent elements. Sort a nearly sorted array (k-sorted). Merge K sorted lists/arrays. Median of a stream (two heaps). Smallest range covering K lists. The "use opposite heap" trick.

7.3 Hash Tables: Implementation & Collision Handling

Hash function design. Open addressing (linear probing, quadratic probing). Separate chaining. Load factor and resizing. How HashMap works internally in Java (buckets, linked list → tree in Java 8). Time complexity analysis: average O(1), worst O(n).

7.4 Hashing Applications

Two-sum family. Group anagrams. Subarray sum equals K (prefix sum + hash). Longest consecutive sequence. First non-repeating character. LRU Cache (hash + linked list). Count distinct elements in window.

Placement relevance: Kth largest element, top K frequent, merge K sorted lists, and median of stream are top-20 interview problems. HashMap internal working is a standard Java interview question. Two-sum is literally the first LeetCode problem and appears in almost every coding assessment.
08

Graph Algorithms

Modelling relationships, networks, and dependencies — the most complex DSA topic

8.1 Graph Representation & Traversal

Adjacency list vs adjacency matrix — when to use which. BFS (level-by-level, shortest path in unweighted graphs). DFS (explore-deep-first, stack-based). Connected components. Bipartite graph check (BFS 2-colouring).

8.2 Cycle Detection & Topological Sort

Cycle detection in undirected graphs (DFS parent tracking, Union-Find). Cycle detection in directed graphs (DFS colouring: white-grey-black). Topological sort: Kahn's algorithm (BFS, in-degree) and DFS-based. Applications: course schedule, build order.

8.3 Shortest Path Algorithms

Dijkstra's (non-negative weights, priority queue). Bellman-Ford (handles negative weights, detects negative cycles). Floyd-Warshall (all-pairs shortest path, O(V³)). 0-1 BFS (deque-based for 0/1 weights). When to use which algorithm.

8.4 Minimum Spanning Tree

Kruskal's algorithm (sort edges + Union-Find). Prim's algorithm (priority queue + greedy). MST properties. Applications: network design, clustering. Why understanding MST matters beyond the algorithm itself.

8.5 Disjoint Set Union (Union-Find)

Union by rank, path compression — near O(1) amortised. Connected components. Cycle detection in undirected graphs. Kruskal's MST. Number of islands (Union-Find approach). Redundant connection. A crucial data structure for graph problems.

8.6 Advanced Graph Problems

Strongly connected components (Kosaraju's, Tarjan's). Articulation points and bridges. Euler path/circuit. Graph colouring. Word ladder (BFS on transformed words). Clone graph. Alien dictionary (topological sort on characters).

Placement relevance: Graph problems are the hardest interview category and appear in 20%+ of product company rounds. Course schedule (topological sort), number of islands (grid DFS/BFS), word ladder, and Dijkstra's algorithm are asked repeatedly at Google, Amazon, Microsoft, and Flipkart.
09

Dynamic Programming

The most feared interview topic — demystified through patterns, not memorisation

9.1 DP Fundamentals: Memoisation vs Tabulation

Overlapping subproblems + optimal substructure — the two conditions for DP. Top-down (recursion + memo) vs bottom-up (iteration + table). State definition: what does dp[i] represent? Transition: how to compute dp[i] from previous states. Space optimisation (rolling arrays).

9.2 1D DP Patterns

Climbing stairs, house robber, decode ways, word break, coin change (min coins), jump game, maximum product subarray. The "choose or skip" pattern. The "take or not take" pattern. Fibonacci-style recurrence.

9.3 2D DP Patterns

Longest Common Subsequence (LCS), Longest Common Substring, Edit Distance, 0/1 Knapsack, Unbounded Knapsack, Minimum Path Sum in grid, Unique Paths. Two-string comparison DP — the most common 2D pattern.

9.4 Subsequence & Partition DP

Longest Increasing Subsequence (LIS — O(n log n) with binary search). Longest Palindromic Subsequence. Palindrome Partitioning. Matrix Chain Multiplication. Partition Equal Subset Sum. Target Sum. Interval DP patterns.

9.5 DP on Trees & Graphs

Diameter of tree (DP on tree). House robber III (DP on tree nodes). Longest path in DAG. Number of paths in grid with obstacles. DP with topological ordering in DAGs.

9.6 Bitmask DP & Advanced Patterns

DP with bitmask for subset enumeration. Travelling Salesman Problem (TSP). Assignment problem. Digit DP (counting numbers with specific properties). Profile DP. When state space is too large — how to identify and prune.

Placement relevance: DP is the single most feared and most asked interview topic at product companies. LCS, knapsack, coin change, LIS, edit distance, and house robber are among the top 30 most asked problems. Companies use DP to test depth of algorithmic thinking. Mastering DP patterns converts "hard" problems into "I've seen this pattern before."
10

Advanced Data Structures & Competitive Patterns

Tries, segment trees, and the patterns that win contests and crack hard interview problems

10.1 Trie (Prefix Tree)

Insert, search, startsWith operations. Autocomplete system. Word search in a matrix (Trie + DFS). Longest common prefix. Maximum XOR of two numbers (bitwise trie). Count distinct substrings. Trie vs HashMap for string problems.

10.2 Segment Tree

Build, query, and update in O(log n). Range sum, range min/max queries. Lazy propagation for range updates. When segment tree is needed vs when prefix sums suffice. Merge sort tree (conceptual).

10.3 Binary Indexed Tree (Fenwick Tree)

Point update + prefix query in O(log n). Simpler to implement than segment tree. Range sum queries. Count of inversions using BIT. When to use BIT vs segment tree (BIT is simpler but less flexible).

10.4 Backtracking Patterns

N-Queens, Sudoku solver, permutations, combinations, subsets, word search, combination sum, palindrome partitioning. The backtracking template: choose → explore → unchoose. Pruning strategies to reduce search space.

10.5 Greedy Algorithm Patterns

Activity selection, fractional knapsack, job sequencing, Huffman encoding, minimum platforms. Greedy choice property — proving correctness. When greedy works vs when DP is needed. Exchange argument for proof.

Placement relevance: Trie questions (autocomplete, word search) appear at Google and Amazon. Backtracking (N-Queens, Sudoku, permutations) is a standard interview category. Segment tree and BIT are competitive coding staples and appear in hard interview problems at DE Shaw, Google, and Flipkart.
Practice Milestones

What Students Should Achieve During This Module

200+ Problems Solved

Across all topics — easy, medium, hard. Tracked on the coding platform with topic-wise breakdowns.

Timed Contest Simulation

Weekly 3-problem contests in 60–90 minutes — mimicking real placement coding rounds.

Company-Tagged Problems

Practice problems tagged by which company asked them — Google, Amazon, TCS, Infosys patterns.

Pattern Recognition Drills

Given a problem, identify the technique (two pointers? sliding window? DP?) within 2 minutes — before coding.

Think-Aloud Practice

Verbalise your approach before coding — the skill that interviewers evaluate as much as the code itself.

Complexity Analysis Habit

After every solution: "Time: O(?), Space: O(?)" — stated before the interviewer asks.

How We Deliver

Live Problem-Solving + Daily Practice + Weekly Contests

Live Problem-Solving Sessions

Trainers don't just explain data structures — they solve problems live, thinking aloud, showing the decision-making process. 4–5 sessions per week, each focused on a technique or topic.

Daily Coding Practice

2,500+ problems on our platform, tagged by topic, difficulty, and company. Students solve 3–5 problems daily between sessions. The platform tracks speed, accuracy, and attempt count.

Weekly Timed Contests

3 problems in 60 minutes, every week. Mimics placement coding rounds. Leaderboard creates healthy competition. Contest review session follows — analysing approaches and optimal solutions.

AI Analytics & Weak Topic Identification

Student-wise dashboards showing: problems solved by topic, accuracy rates, time per problem, weak areas. TPOs see batch-level DSA readiness. AI recommends which topics to focus on next.

Why DSA Is Non-Negotiable

The Module That Decides Product Company Placements

Product Companies = DSA

Google, Amazon, Microsoft, Flipkart, DE Shaw, Goldman Sachs — the coding round IS the interview. 2–3 DSA problems in 60 minutes. Without systematic DSA training, students cannot compete. There is no shortcut.

Service Companies Are Adding DSA

TCS Digital, Infosys SP, Cognizant GenC Next, Wipro Turbo — the premium hiring tracks at service companies now include DSA-level coding rounds. Students who only prepare aptitude miss these higher-package opportunities.

Techniques > Knowledge

Knowing "what a graph is" doesn't help you solve "find shortest path in a grid with obstacles." Knowing the BFS-on-grid technique does. Module 2 (Problem-Solving Techniques) is what converts knowledge into interview performance.

Volume Builds Fluency

A student who's solved 200+ DSA problems recognises patterns within seconds. A student who's solved 20 problems spends the first 10 minutes figuring out the approach — and runs out of time. There is no substitute for practice volume.