1
DSA SYALLABUS
Permutations and Combinations Using
1. Mathematics for DSA
Recursion
Prime Numbers and Sieve of Eratosthenes
Subset Sum, Subsets, and Subsequences
GCD, LCM, and Extended Euclidean Algorithm
N-Queens Problem
Fast Exponentiation (Binary Exponentiation)
Sudoku Solver
Modular Arithmetic and Modular Inverse
Rat in a Maze
Fibonacci Series and Matrix Exponentiation
Word Break Problem
Counting Trailing Zeroes in Factorial
Knights Tour
Bit Manipulation (AND, OR, XOR, Left/Right
Shift)
3. Sorting Algorithms
Hamming Distance, Bit Counting, Parity Check
Comparison-Based Sorting
Bubble Sort, Selection Sort, Insertion Sort
2. Recursion & Backtracking
Merge Sort, Quick Sort
Basics of Recursion (Base Case, Recursive
Calls)
Heap Sort
Tail and Non-Tail Recursion
Non-Comparison-Based Sorting
Recursion vs Iteration
Counting Sort, Radix Sort, Bucket Sort
1
2
DSA SYALLABUS
4. Searching Algorithms Two Sum Problem using Hashing
Linear Search
6. Arrays & Strings
Binary Search (Iterative & Recursive)
Prefix Sum, Suffix Sum
Ternary Search
Sliding Window Technique
Exponential Search
Two-Pointer Approach
Fibonacci Search
Kadane’s Algorithm (Maximum Subarray Sum)
Jump Search
Next Greater/Smaller Element
Interpolation Search
Rearranging Array Elements (Dutch National
Flag)
5. Hashing
Longest Consecutive Subsequence
Hash Functions & Hash Tables
String Matching Algorithms
Collision Handling (Chaining, Open
KMP (Knuth-Morris-Pratt) Algorithm
Addressing)
Rabin-Karp Algorithm
Direct Address Table
Z Algorithm
Rolling Hash & Rabin-Karp Algorithm
Aho-Corasick Algorithm
Implementing Custom Hash Functions
Double Hashin
2
3
DSA SYALLABUS
7. Stack and Queue Detect and Remove Cycle (Floyd’s Cycle
Detection)
Implementation using Arrays and Linked List
Merge Two Sorted Lists
Infix, Prefix, and Postfix Conversion
Reverse a Linked List
Next Greater and Next Smaller Element
Kth Node from End of Linked List
LRU Cache Implementation
Clone a Linked List with Random Pointers
Balanced Parentheses Problem
9. Trees
Queue Variants:
Binary Tree Basics (Preorder, Inorder,
Circular Queue
Postorder)
Deque (Double-ended Queue)
Level Order Traversal (BFS for Trees)
Priority Queue
Height and Diameter of a Tree
Lowest Common Ancestor (LCA)
8. Linked List
Morris Traversal (Threaded Binary Tree)
Singly Linked List (Insertion, Deletion,
Traversal)
Tree Serialization and Deserialization
Doubly Linked List
Binary Search Tree (BST) Operations
Circular Linked List
Balanced BST (AVL Tree, Red-Black Tree, Splay
Tree)
3
4
DSA SYALLABUS
Trie (Prefix Tree) Prim’s Algorithm
Segment Tree (Range Sum, Lazy Propagation)
Bridges and Articulation Points (Tarjan’s
Algorithm)
Fenwick Tree (Binary Indexed Tree)
Strongly Connected Components (Kosaraju’s
Algorithm)
10. Graph Algorithms
Eulerian and Hamiltonian Paths
Graph Representations (Adjacency
Matrix/List)
Network Flow (Ford-Fulkerson Algorithm)
BFS & DFS
11. Dynamic Programming (DP)
Detect Cycle in Graph (Undirected & Directed)
Basic DP Concepts (Top-Down vs Bottom-Up)
Topological Sorting (Kahn’s Algorithm & DFS)
1D DP Problems
Shortest Path Algorithms:
Fibonacci Using DP
Dijkstra’s Algorithm
Climbing Stairs
Bellman-Ford Algorithm
Minimum Cost Path
Floyd Warshall Algorithm
2D DP Problems
Minimum Spanning Tree (MST)
Longest Common Subsequence (LCS)
Kruskal’s Algorithm
4
5
DSA SYALLABUS
Longest Palindromic Subsequence
DP on Graphs
Matrix Chain Multiplication
Floyd Warshall Algorithm
Subset DP Bellman-Ford Algorithm
Subset Sum Problem
Partition Equal Subset Sum 12. Greedy Algorithms
Activity Selection Problem
Knapsack Problems
Huffman Encoding
0/1 Knapsack
Job Sequencing Problem
Unbounded Knapsack
Kruskal’s and Prim’s Algorithm
DP on Strings Fractional Knapsack
Edit Distance Optimal Merge Pattern
Wildcard Matching
13. Advanced Topics
DP on Trees
Disjoint Set Union (DSU)
Diameter of a Tree
Union by Rank
Maximum Path Sum in Binary Tree
5
6
DSA SYALLABUS
Path Compression 15. Computational Geometry
(Optional, for CP & Interviews)
Kruskal’s Algorithm using DSU
Convex Hull (Graham’s Scan, Jarvis March)
Mo’s Algorithm (Offline Query Processing) Line Sweep Algorithm
Heavy Light Decomposition (HLD) for Trees Closest Pair of Points
Persistent Data Structures Rotating Calipers
Suffix Array & Suffix Tree
String Hashing (Polynomial Rolling Hash, 16. Number Theory &
Double Hashing)
Combinatorics
K-D Tree for Nearest Neighbor Search
Sieve of Eratosthenes
Prime Factorization using Sieve
14. Advanced Graph Algorithms Euler’s Totient Function
Graph Coloring (Backtracking Approach, Lucas Theorem
Greedy Approach)
Chinese Remainder Theorem
Planar Graphs
Inclusion-Exclusion Principle
Euler Tour Technique
Graph Compression Techniques