1
LEVEL 1 - Module 1: Introduction to DSA
Understand data structures, algorithms, their types, and why they matter in real-world software systems.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Explain what data structures are
• Explain what algorithms are
• Describe why DSA is important for developers
• Identify major types of data structures and algorithms
• Recognize real-world DSA applications
2
LEVEL 1 - Module 2: Time & Space Complexity
Learn complexity fundamentals and analyze algorithms using asymptotic notations and case-based evaluation.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define time complexity
• Define space complexity
• Apply Big-O notation
• Differentiate Big-Omega and Big-Theta
• Analyze best, average, and worst cases
3
LEVEL 1 - Module 3: Problem Solving Basics
Build a problem-solving framework using algorithm design steps, pseudocode, flowcharts, and dry runs.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define structured problem solving
• Apply algorithm design steps
• Write clear pseudocode
• Use flowcharts for visual reasoning
• Perform dry runs to validate logic
4
LEVEL 2 - Module 4: Arrays
Learn array fundamentals, core operations, and common array-based coding patterns.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Explain array structure and indexing
• Perform basic array operations
• Implement traversal, insertion, and deletion
• Apply searching in arrays
• Solve common array problems
5
LEVEL 2 - Module 5: Strings
Master string concepts and operations, including manipulation, palindrome checks, and pattern matching.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define strings and their properties
• Use core string operations
• Implement common string manipulations
• Solve palindrome-based questions
• Understand basic pattern matching
6
LEVEL 2 - Module 6: Two Pointer Technique
Use two-pointer and sliding-window approaches to optimize array and string problem solving.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Explain the two-pointer technique
• Understand sliding window basics
• Choose pointer-based patterns for suitable problems
• Solve common interview-style questions
7
LEVEL 3 - Module 7: Recursion
Understand recursion mechanics, base/recursive cases, recursion trees, and stack behavior.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define recursion clearly
• Identify base and recursive cases
• Visualize recursion using recursion trees
• Explain stack memory in recursive calls
8
LEVEL 3 - Module 8: Backtracking
Solve combinatorial search problems through backtracking templates and constraints-driven exploration.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Explain backtracking approach
• Generate subsets and permutations
• Model and solve N-Queens
• Understand Sudoku solver flow
9
LEVEL 4 - Module 9: Linked List Basics
Learn linked list fundamentals, node structure, and major linked list variants.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Explain linked list structure
• Differentiate types of linked lists
• Understand node representation and pointers
10
LEVEL 4 - Module 10: Linked List Operations
Implement core linked list operations and solve frequent linked-list interview problems.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Perform insertion and deletion
• Traverse and reverse linked lists
• Detect cycles in linked structures
11
LEVEL 5 - Module 11: Stack
Understand stack behavior, implementation choices, and practical stack applications.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define stack and LIFO principle
• Implement stack operations
• Build stack using Python list
• Apply stacks to practical problems
12
LEVEL 5 - Module 12: Queue
Learn queue variants and operations, including circular queue and deque usage.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define queue and FIFO principle
• Implement queue operations
• Differentiate circular queue and deque
• Use queue in real scenarios
13
LEVEL 6 - Module 13: Tree Basics
Build foundational understanding of trees, tree types, and essential terminology.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define tree data structure
• Identify different tree types
• Use core tree terminology correctly
14
LEVEL 6 - Module 14: Binary Trees
Learn binary tree structure and implement major traversal techniques.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define binary tree
• Perform inorder, preorder, and postorder traversals
• Implement level-order traversal
15
LEVEL 6 - Module 15: Binary Search Tree (BST)
Implement BST operations and leverage ordered tree properties for efficient lookup.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define BST properties
• Implement BST insertion and deletion
• Perform efficient BST search
16
LEVEL 6 - Module 16: Advanced Trees
Explore balanced trees and heaps, and understand priority-queue-driven workflows.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define balanced trees and why they matter
• Understand AVL tree rotations conceptually
• Use min-heap and max-heap concepts
• Apply priority queue operations
17
LEVEL 7 - Module 17: Hashing
Understand hashing internals, collision strategies, and Python dictionary behavior.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Explain hashing conceptually
• Use hash tables effectively
• Understand hash functions and collisions
• Describe Python dictionary internals at a high level
18
LEVEL 8 - Module 18: Graph Basics
Learn graph structures, graph types, and common representations used in algorithms.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define graphs and graph components
• Differentiate major graph types
• Represent graphs using adjacency list and matrix
19
LEVEL 8 - Module 19: Graph Traversal
Implement and compare BFS and DFS for traversal and connectivity tasks.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Implement BFS traversal
• Implement DFS traversal
• Choose between BFS and DFS by problem type
20
LEVEL 8 - Module 20: Graph Algorithms
Solve path, spanning, and dependency problems with core graph algorithms.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Apply Dijkstra for shortest path
• Understand minimum spanning tree concept
• Perform topological sorting for DAG dependencies
21
LEVEL 9 - Module 21: Searching Algorithms
Learn searching basics and implement linear and binary search with use-case awareness.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define searching in algorithmic terms
• Implement linear search
• Implement binary search with sorted data constraints
22
LEVEL 9 - Module 22: Sorting Algorithms
Master foundational sorting methods and compare trade-offs across common algorithms.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define sorting and its purpose
• Implement bubble, selection, and insertion sort
• Implement merge sort and quick sort
• Compare sorting complexity and behavior
23
LEVEL 10 - Module 23: Greedy Algorithms
Understand greedy strategy and apply it to optimization-style algorithmic problems.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define greedy approach
• Solve activity selection problems
• Analyze greedy coin change scenarios
24
LEVEL 10 - Module 24: Dynamic Programming
Build DP intuition through memoization, tabulation, and classic optimization problems.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define dynamic programming and overlapping subproblems
• Implement memoization and tabulation
• Solve Fibonacci and knapsack-style problems
25
LEVEL 10 - Module 25: Divide & Conquer
Learn divide-and-conquer thinking and apply it in recursive algorithm design.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Define divide and conquer paradigm
• Understand merge sort through divide and conquer
• Understand quick sort partitioning strategy
26
LEVEL 11 - Module 26: Problem Solving Patterns
Use interview-friendly templates to quickly identify and solve recurring problem structures.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Apply sliding window pattern
• Apply two-pointer pattern
• Use prefix sums effectively
• Use fast and slow pointers for linked problems
27
LEVEL 11 - Module 27: Advanced Problem Solving
Strengthen interview performance by solving hard problems with optimization and edge-case rigor.
Locked
Please enroll in this course to access the modules.
Learning objectives:
• Practice hard-level DSA questions
• Apply optimization techniques to improve solutions
• Handle edge cases consistently and correctly