What you'll learn:
- Storage and representation of graphs (networks) on a computer
- Common graph theory problems
- Breadth first search algorithm
- Depth first search algorithm
- Various tree algorithms including: the height or a tree, finding the center of a tree, rooting a tree, and etc...
- Dijkstra's algorithm
- Topological sort algorithm
- Shortest/longest path on a acyclic graph
- Bellman Ford's algorithm
- Floyd-Warshall all pairs shortest path algorithm
- Finding bridges/articulation points
- Finding strongly connected components (Tarjan's)
- Travelling salesman problem (TSP)
- How to find the maximum flow of a flow graph
- Finding bipartite graph matchings
- Various network flow algorithms including: Edmonds-Karp, Capacity Scaling, and Dinic's algorithm
- Kruskal's Minimum Spanning Tree algorithm
- The Lowest Common Ancestor (LCA) Problem
This course provides a complete introduction to Graph Theory algorithms in computer science.
Topics covered in these videos include: how to store and represent graphs on a computer;common graph theory problems seen in the wild;famousgraph traversal algorithms (DFS &BFS);Dijkstra's shortest path algorithm (both thelazy and eager version);what atopological sort is, how to find one, and places it's used; learning about detecting negative cycles and finding shortest paths with theBellman-Ford and Floyd-Warshall algorithms; discovering bridges and articulation points in graphs; understanding and detecting strongly connected components with Tarjan's algorithm, and finally solving the traveling salesman problemwith dynamic programming.