| Sorting & Searching | Linked Lists | Binary Trees | Graphs | Optimization Algorithms | |
|————————————————|——————————————|——————————————|————————————————————————————————————————–|——————————————————–|———————————|
| Terminology | Definition | Properties | Representations
adjacency matrix, adjacency list, edge list | Greedy Approach | |
| Selection Sort | Uses | Traversals | Traversals
DFS, BFS | Dynamic Programming |
| Bubble Sort | Basic Operations | Types of Trees | Shortest Path Algorithms
Dijkstra’s, Bellman Ford, Floyd-Warshall | Backtracking |
| Insertion Sort | Problems | | Minimum Spanning Tree (MST) Algorithms
Kruskal’s, Prim’s | |
| Merge Sort | | | Topological Sorting Algorithms
Kahn’s, DFS based | |
| Quick Sort | | | Strongly Connected Components (SCC) Algorithms
Kosaraju’s, Tarjan’s | |
| Heap Sort | | | Cycle Detection
In Directed Graphs(using DFS), In Undirected Graphs (using DFS/Union-Find) | |
| Searching Techniques | | | Graph Coloring
Bipartite Graph Check (using BFS/DFS), Chromatic Number and Graph Coloring problems | |
| | | | Network Flow
Ford-Fulkerson Method,Edmonds-Karp Algorithm, Max Flow-Min Cut Theorem | |
| | | | Union-Find Data Structure
Applications in connectivity and cycle detection, Path compression and union by rank | |
| | | | Eulerian and Hamiltonian Paths/Circuits
Eulerian Path and Circuit, Hamiltonian Path and Circuit | |
| | | | Dynamic Programming on Graphs
Longest Path in a Directed Acyclic Graph (DAG), Traveling Salesman Problem (TSP) | |
| | | | Graph Matching
Bipartite Matching, Hopcroft-Karp Algorithm | |
| | | | Graph Algorithms for Specific Problems
Finding Bridges and Articulation Points, Finding the Diameter of a Tree | |
| | | | Problems
1. jfsndvjdk
2. dcejkdfbvkjnckw
3. efivdnknkw | |