If you wish to contribute to this topic, you may do so in this repository
- Graph Algorithms: • Graph Traversal (DFS, BFS) • Shortest Path Algorithms (Dijkstra's, Bellman-Ford, Floyd-Warshall) • Minimum Spanning Tree (Prim's and Kruskal's) • Topological Sorting • Strongly Connected Components • Maximum Flow Algorithms (Ford-Fulkerson, Edmonds-Karp) • Graph Coloring and Matching
- Dynamic Programming: • Longest Common Subsequence (LCS) • Longest Increasing Subsequence (LIS) • Knapsack Problem (0/1 and Fractional) • Matrix Chain Multiplication • Edit Distance • Travelling Salesman Problem (TSP) • Dynamic Programming on Trees • Bitmask DP
- Advanced Sorting Algorithms: • Merge Sort • Quick Sort • Heap Sort • Radix Sort • Tim Sort • External Sorting
- Advanced Data Structures: • AVL Trees and Red-Black Trees • B-Trees and B+ Trees • Suffix Trees and Suffix Arrays • Segment Trees • Fenwick Trees (Binary Indexed Trees) • Trie Data Structures • Union-Find (Disjoint Set Union)
- Greedy Algorithms: • Huffman Coding • Minimum Spanning Tree Algorithms • Job Scheduling (Interval Scheduling) • Fractional Knapsack • Shortest Path Algorithms (Dijkstra's)
- Number Theory: • Prime Number Generation (Sieve of Eratosthenes) • Modular Arithmetic • Greatest Common Divisor (GCD) • Fast Exponentiation (Modular Exponentiation) • Number-Theoretic Algorithms (Euler's Totient Function, Chinese Remainder Theorem)
- Advanced Searching: • Binary Search Variations • Ternary Search • Interpolation Search • Exponential Search
- String Algorithms: • Pattern Matching (KMP, Rabin-Karp, Boyer-Moore) • Longest Common Prefix (LCP) Array • Suffix Trees and Suffix Arrays
- Randomized Algorithms: • Randomized QuickSort • Randomized Selection • Monte Carlo and Las Vegas Algorithms
- Computational Geometry: • Convex Hull (Graham's Scan, Jarvis March) • Line Sweep Algorithms • Closest Pair of Points