RoadMap_DSA
RoadMap_DSA
Linked Lists
Stack introduction
Push, Pop, Peek, isEmpty, isFull functions
Implementing a Stack
Stacks using inbuilt libraries
Valid parenthesis problem
Dealing with Reverse Polish Notation
Finding Next Greater Element
Largest Rectangle in a Histogram
Queue introduction - Enqueue / Dequeue
Queue Implementation
To do list using a Queue
Time Complexity
Greedy Algorithms
Binary Search
Recursion
Introduction to Recursion
Base Condition
Solve Sum of N Numbers using Recursion
Factorial using Recursion
Fibonacci series
Linear search and patterns using Recursion
Palindrome using Recursion
All Possible Subsets
Backtracking - Unique Combinations Sum
Backtracking - Find Unique Permutations
2D Arrays / Matrices
Representing a Matrix
Matrix traversal
Matrix multiplication
Matrix rotations
Finding path with minimum sum
Search in Matrix
Median in Matrix
Introduction to Trees
Nodes, Edges, Root, Leaves
Tree property
Degree of a Node
Depth and Height of a Tree
Adjacency matrix representation
Adjacency list representation
Depth First Search
Breadth First Search
Binary Trees
Types of Binary Trees
PreOrder, PostOrder and InOrder traversal
Height of a Binary Tree
Binary Search Tree
Search in Binary Search Tree
Graphs
Introduction to Graphs
Undirected and Directed Graphs
Representation as Adjacency Matrix
Representation as Adjacency List
Graph Traversal
Depth First Search
Breadth First Search
Connected Components
Cycles in Graphs
Directed Acyclic Graph
Topological Sorting
Heaps
Introduction to Heaps
Max Heap and Min Heap
Representation as an Array
Insertion in Heap
Deletion of root
Time complexity of operations
Heap Sort
Find K-th largest number
Bit Manipulation
Dynamic Programming
Number theory
Prime Factorization
Prime Factorization in Sqrt(n)
Counting Divisors - I
GCD and LCM
Euclid Algorithm for GCD
Modular Arithmetic
Fast Exponentiation
Modular Multiplicative Inverse
Fermat Binomials
Sieve of Eratosthenes
Primality Test
Prime Factorization Method using Sieve O (log n)
Combinatorics
Introduction to Combinatorics
Conceptual Problems
Tries
Structure of a Trie
Insertion in Trie
Searching for a string in Trie
Deleting a string in Trie
Applications - Spell Check, Autocomplete