DATA STRUCTURES & ALGORITHMS (DSA) IN
PYTHON
1. Programming Fundamentals
• Python syntax recap
• Time & space complexity
• Big-O, Big-Ω, Big-Θ
• Recursion basics
• Mutable vs immutable
2. Mathematical Foundations
• GCD & LCM
• Prime numbers
• Sieve of Eratosthenes
• Modular arithmetic
• Bit manipulation basics
3. Arrays & Lists
• Traversal
• Insertion & deletion
• Prefix sum
• Kadane’s algorithm
• Two-pointer technique
• Sliding window
• Matrix problems
4. Strings
• Palindrome
• Anagram
• Pattern matching
• KMP
• Rabin-Karp
• Z-algorithm
5. Recursion & Backtracking
• Subsets
• Permutations
• Combinations
• N-Queens
• Sudoku solver
6. Searching Algorithms
• Linear search
• Binary search
• Binary search on answer
• Search in rotated array
7. Sorting Algorithms
• Bubble, Selection, Insertion
• Merge sort
• Quick sort
• Heap sort
• Counting, Radix, Bucket sort
8. Linked List
• Singly, Doubly, Circular linked list
• Reverse list
• Detect loop
• LRU Cache
9. Stack
• Balanced parentheses
• Expression evaluation
• Next greater element
• Min stack
10. Queue
• Circular queue
• Deque
• Priority queue
• Sliding window maximum
11. Hashing
• Hash tables
• Frequency counting
• Two sum
• Longest consecutive sequence
12. Trees
• Binary tree
• BST
• Traversals
• Diameter
• LCA
• Balanced tree
13. Heap
• Min heap
• Max heap
• Kth largest/smallest
• Median in stream
14. Graphs
• BFS
• DFS
• Cycle detection
• Dijkstra
• Bellman-Ford
• MST
15. Greedy Algorithms
• Activity selection
• Knapsack
• Job sequencing
• Huffman coding
16. Dynamic Programming
• Knapsack
• LCS
• LIS
• Coin change
• Matrix chain multiplication
17. Bit Manipulation
• XOR problems
• Power of two
• Bit masking
18. Advanced Data Structures
• Trie
• Segment tree
• Fenwick tree
• Sparse table
19. Competitive Programming
• Fast I/O
• Prefix arrays
• Binary lifting
• Mo’s algorithm
20. Interview Preparation
• Pattern-based problems
• Mock interviews
• Time & space optimization