Graph Theory Algorithms
Created by William Fiset, Last Updated 08Nov2019, Language:English
Graph Theory Algorithms
A complete overview of graph theory algorithms in computer science and mathematics.
Created by William Fiset, Last Updated 08Nov2019, Language:English
What Will I Get ?
 Storage and representation of graphs (networks) on a computer
 Common graph theory problems
 Breadth first search algorithm
 Depth first search algorithm
 Dijkstra's algorithm
 Topological sort algorithm
 Shortest/longest path on a acyclic graph
 Bellman Ford's algorithm
 FloydWarshall all pairs shortest path algorithm
 Finding bridges/articulation points
 Finding strongly connected components (Tarjan's)
 Travelling salesman problem (TSP)
Requirements
 Exposure to computer science fundamentals (e.g: data structures, recursion, data types, classes, OOP)
 Some prior programming knowledge
Description
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; famous graph traversal algorithms (DFS & BFS); Dijkstra's shortest path algorithm (both the lazy and eager version); what a topological sort is, how to find one, and places it's used; learning about detecting negative cycles and finding shortest paths with the BellmanFord and FloydWarshall algorithms; discovering bridges and articulation points in graphs; understanding and detecting strongly connected components with Tarjan's algorithm, and finally solving the travelling salesman problem with dynamic programming.
Who this course is for:
 Anybody ready for a deep dive into graph theory
Course Content

Graph Theory Algorithms
32 Lectures 06:33:56
Graph Theory Introduction
Preview00:14:24 
Problems in Graph Theory
Preview00:09:59 
Depth First Search algorithm
Preview00:10:39 
Breadth First Search algorithm
00:07:45 
Breadth First Search grid shortest path
00:16:50 
Dijkstra's shortest path algorithm
00:24:31 
Dijkstra's shortest path algorithm  source code
00:09:11 
Topological sort algorithm
00:14:04 
Shortest/longest path on a Directed Acyclic Graph (DAG)
00:10:14 
BellmanFord algorithm
00:15:16 
FloydWarshall all pairs shortest path algorithm
00:15:55 
FloydWarshall all pairs shortest path algorithm  source code
00:09:28 
Bridges & Articulation points
00:20:16 
Bridges & Articulation points  source code
00:09:22 
Tarjan's strongly connected components algorithm
00:17:00 
Tarjan's strongly connected components algorithm  source code
00:07:11 
Travelling Salesman problem
00:20:48 
Travelling Salesman problem  source code
00:13:32 
Existence of Eulerian path and circuits
00:09:40 
Eulerian path algorithm
00:15:34 
Eulerian path source code
00:08:17 
Max Flow Ford Fulkerson  Network Flow
00:13:05 
Max Flow Ford Fulkerson  source code
00:17:28 
Unweighted bipartite matching  Network flow
00:11:21 
Mice and Owls  Network Flow
00:08:27 
Elementary Math  Network Flow
00:10:44 
Edmonds Karp  Network Flow
00:09:31 
Edmonds Karp  Network Flow  Source Code
00:05:47 
Capacity Scaling  Network Flow
00:10:09 
Capacity Scaling  Network Flow  Source Code
00:06:23 
Dinic's Algorithm  Network Flow
00:11:39 
Dinic's Algorithm  Network Flow  Source Code
00:09:26
