Complete Data Structures and Algorithms (DSA) Syllabus
1. Introduction to DSA
- Importance in Programming & Interviews
- Time and Space Complexity
- Big-O, Big-Theta, Big-Omega
- Best, Average, Worst-case
- Asymptotic Notations
Complete Data Structures and Algorithms (DSA) Syllabus
2. Mathematics for DSA
- Prime Numbers
- Euclidean Algorithm (GCD, LCM)
- Modular Arithmetic
- Bit Manipulation
- Sieve of Eratosthenes
Complete Data Structures and Algorithms (DSA) Syllabus
3. Recursion & Backtracking
- Basics of Recursion
- Recursive Tree and its Complexity
- Backtracking:
- N-Queens
- Sudoku Solver
- Rat in a Maze
Complete Data Structures and Algorithms (DSA) Syllabus
4. Arrays and Strings
- 1D & 2D Arrays
- In-place Algorithms
- Sliding Window, Two Pointers
- Prefix Sums
- String Matching:
- KMP Algorithm
- Rabin-Karp
Complete Data Structures and Algorithms (DSA) Syllabus
5. Searching and Sorting
- Linear & Binary Search
- Binary Search on Answer
- Sorting:
- Bubble, Selection, Insertion
- Merge, Quick, Heap Sort
- Counting, Radix Sort
Complete Data Structures and Algorithms (DSA) Syllabus
6. Linked Lists
- Singly, Doubly, Circular
- Fast & Slow Pointers
- Cycle Detection (Floyd's)
- Reversal
- Merge Two Lists
Complete Data Structures and Algorithms (DSA) Syllabus
7. Stack and Queue
- Implementations
- Infix/Postfix Evaluation
- Circular Queue, Deque
- Stack Using Queues & Vice Versa
Complete Data Structures and Algorithms (DSA) Syllabus
8. Trees
- Binary Tree / BST
- Inorder, Preorder, Postorder
- Level Order, Height, Diameter
- LCA, AVL Basics
- Segment Tree, Fenwick Tree
Complete Data Structures and Algorithms (DSA) Syllabus
9. Heaps & Priority Queue
- Min / Max Heap
- Heapify
- Heap Sort
- STL Priority Queue
- Top-K Problems
Complete Data Structures and Algorithms (DSA) Syllabus
10. Hashing
- Hash Tables / Maps
- Collision Handling
- Applications (Frequency, Subarrays)
Complete Data Structures and Algorithms (DSA) Syllabus
11. Graphs
- Representations
- BFS / DFS
- Topological Sort
- Dijkstra, Bellman-Ford, Floyd-Warshall
- Kruskal, Prim, Union-Find
Complete Data Structures and Algorithms (DSA) Syllabus
12. Greedy Algorithms
- Activity Selection
- Fractional Knapsack
- Huffman Encoding
- Job Sequencing
Complete Data Structures and Algorithms (DSA) Syllabus
13. Dynamic Programming
- Memoization / Tabulation
- 0/1 Knapsack
- LCS, LIS
- Matrix Chain Multiplication
- DP on Trees / Bitmask
Complete Data Structures and Algorithms (DSA) Syllabus
14. Tries & String Algorithms
- Trie Basics
- Auto-complete
- Longest Prefix
- Suffix Array / Tree (Intro)
Complete Data Structures and Algorithms (DSA) Syllabus
15. Advanced Topics (Optional)
- Lazy Segment Trees
- Mo's Algorithm
- HLD, Centroid Decomposition
- Persistent Structures
- Square Root Decomposition
Complete Data Structures and Algorithms (DSA) Syllabus
16. Practice Strategy
- Leetcode, GFG, Codeforces
- Topic-wise Practice
- Contests & Timed Tests
- Regular Revision