Explanation, Analysis and Implementation of Graph Algorithms
-
Breadth First Search:
-> Exploring the entire graph
-> Finding the first (shortest) path from start to end node
-> Finding all possible paths from start to end node
-
Depth First Search:
-> Exploring the entire graph
-> Finding the first path from start to end node
-> Finding all possible paths from start to end node
-
Cycle Detection in Undirected Graph
-
Cycle Detection in Directed Graph
-
Toplogical Sorting
-
Check for Bipartite Graph
-
Welsh-Powell Graph Coloring Algorithm
-
Check if graph is a tree or not
-
Kruskal's Minimum Spanning Tree Algorithm
-
Prim's Minimum Spanning Tree Algorithm (Graph Structure)
-
Prim's Minimum Spanning Tree Algorithm (Adjacency List Structure)
-
Dijkstra's Shortest Path
-
Bellman-Ford
-
Floyd Warshall all pairs shortest path algorithm
-
Johnson's all pairs shortest path algorithm
-
Pruning Algorithm for Shortest Path in Directed Acyclic Graph
-
Find Existence of a path between 2 nodes in a directed graph
-
Directed Graph Connectivity
-
Eulerian Path
-
Eulerian Circuit
-
Fleury's Algorithm
-
Tarjan's Algorithm to find strongly connected components
-
Maximum Bipartite Matching
-
Ford-Fulkerson Max Flow Algorithm
-
QuadTree
-
Tree Traversal
-> Pre-Order
-> In-order
-> Post-Order