Welcome to CodeHelp Supreme 2.0, a 5-month structured Data Structures and Algorithms (DSA) course designed to strengthen your problem-solving skills using C++. This course follows a well-organized weekly plan, covering fundamental to advanced DSA concepts with hands-on coding exercises.
To complement this course, we have curated practice questions from LeetCode and GeeksforGeeks. If you are eager to solve these problems, please visit my repositories:
- LeetCode Repository: https://github.com/namangarg2002/leetcode
- GeeksforGeeks Repository: https://github.com/namangarg2002/gfg
- Introduction to C++
- Input/Output operations
- Conditionals and Loops
- Functions and Scope
- Basics of Memory Management
- Arrays and their operations
- Time complexity analysis (Big O notation)
- Space complexity concepts
- Binary Search, Linear Search
- Sorting Algorithms (Bubble, Insertion, Selection, Merge, Quick Sort)
- C-style strings vs.
std::string
- String manipulation techniques
- Pattern Matching Algorithms (KMP, Rabin-Karp)
- Prime Numbers, GCD, LCM
- Modular Arithmetic, Bitwise Operators
- Understanding Pointers & Memory Allocation
- Recursion Basics
- Recursion Tree & Backtracking Introduction
- Applications of Recursion
- Merge Sort, Quick Sort
- Backtracking Problems (N-Queens, Sudoku Solver, Rat in a Maze)
- Classes & Objects
- Inheritance, Polymorphism, Encapsulation
- Operator Overloading
- Singly and Doubly Linked Lists
- Circular Linked List
- Linked List Reversal & Cycle Detection
- Stack Implementation (Array & Linked List)
- Infix, Prefix, Postfix Conversion
- Balanced Parentheses, Next Greater Element
- Queue Implementation (Array & Linked List)
- Circular Queue, Deque
- Priority Queue (Heap Implementation)
- Tree Basics (Traversal: Inorder, Preorder, Postorder)
- Generic Trees & Binary Trees
- BST Properties
- BST Operations (Insert, Delete, Search)
- Balanced BST (AVL, Red-Black Tree)
- Min Heap, Max Heap
- Heap Sort Algorithm
- Priority Queue & Its Applications
- Hashmaps, Unordered Maps
- Tries & Their Applications (Prefix Matching, Auto-complete)
- Introduction to DP
- Memoization vs. Tabulation
- Basic DP Problems (Fibonacci, Knapsack, LIS, etc.)
- Graph Representation (Adjacency List & Matrix)
- BFS & DFS
- Dijkstra’s Algorithm, Floyd-Warshall Algorithm
- Bit Manipulation Techniques
- Advanced Backtracking Problems
For hands-on practice, visit my LeetCode and GeeksforGeeks repositories to solve the curated problems from this course:
- LeetCode Repository: https://github.com/namangarg2002/leetcode
- GeeksforGeeks Repository: https://github.com/namangarg2002/gfg
Happy Coding! 🚀