Graph Theory Algorithms (Udemy.com)
A complete overview of graph theory algorithms in computer science and mathematics.
Created by: William Fiset
Last updated July 2020
What you will 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
How it compares
Against the other 86 rated Udemy courses in Data Structures and Algorithms on CourseDuck:
- Rating4.6 out of 5higher than 66% of them
- Reviews2,126#17 of 87 by number of reviews
- Length9.1 hoursshorter than 60% of them
- Last updatedJuly 2020earlier than 75% of them
Course Description
Welcome to this Graph Theory Algorithms course!
Graph theory is a fundamental branch of mathematics that deals with the study of graphs, networks, and their applications in real-world scenarios. This course is designed to equip you with the necessary skills and knowledge to understand, analyze, and solve problems related to graph theory.
In this course, you will receive a thorough introduction to graph theory algorithms as they apply to computer science. Throughout the videos, we will cover a range of topics, including how to represent and store graphs on a computer, common graph theory problems encountered in real-world scenarios, famous graph traversal algorithms like DFS and BFS, as well as the lazy and eager versions of Dijkstra's shortest path algorithm. Additionally, we will explore what a topological sort is, how to identify one, and its applications. You will also learn about detecting negative cycles and finding shortest paths using the Bellman-Ford and Floyd-Warshall algorithms, discovering bridges and articulation points in graphs, understanding and detecting strongly connected components using Tarjan's algorithm, and finally, solving the traveling salesman problem with dynamic programming.
Throughout the course, we will use a hands-on approach to teaching, with plenty of examples and exercises to reinforce your understanding of the material. By the end of this course, you will have a deep understanding of graph theory algorithms and be able to apply them to solve real-world problems.
So, whether you are a computer science student, a software developer, or just someone interested in the fascinating world of graph theory, this course is for you! Join today and take your first step towards mastering the art of graph theory algorithms.
Instructor Details
- 4.6 Rating
2,126 Reviews
William Fiset
Hello!
My name is William, and I'm a software engineer at Google. I'm excited to share my knowledge and passion for computer science and programming with you through my courses on data structures and algorithms.
One of my greatest joys is teaching others and helping them to achieve their goals. That's why I have created courses on data structures and algorithms. I believe that these are some of the most important topics for anyone looking to excel in software engineering, and I am dedicated to sharing my knowledge and expertise to benefit my students.
In my courses, I use real-world examples and practical exercises to help students understand the concepts and apply them in real-life situations. Whether you are a beginner or an experienced programmer, my courses are designed to help you master data structures and algorithms and become a confident software engineer.
I am committed to your success and passionate about helping you reach your full potential. So, I invite you to enroll in one of my courses today and join me on the exciting journey of mastering data structures and algorithms!
Yours sincerely,
William
More courses by William Fiset
More Data Structures and Algorithms courses
JavaScript Data Structures & Algorithms + LEETCODE Exercises (2026)
4.9 (4,131 Reviews)
Provider: Udemy
Time: 9.6h
$119.99
Data Structures & Algorithms: Coding Interview Masterclass (2026)
4.8 (15,900 Reviews)
Provider: Udemy
Time: 10.8h
$99.99
Master the Coding Interview: Big Tech (FAANG) Interviews (2026)
4.8 (6,000 Reviews)
Provider: Udemy
Time: 36.8h
$109.99
Mastering critical SKILLS in Algorithms using C++: Part 1 (2023)
4.8 (598 Reviews)
Provider: Udemy
Time: 18.9h
$84.99
Reviews
By Jaspreet Singh on 12/15/2024
The best course to learn graph algorithms. It is well structured and well taught. Theory with practical hands on examples helped me a lot to understand the theory and re-write the programs in C++.
By Dylan B on 10/31/2024
Overall a good course. Valuable visuals and access to code/pseudocode that helps you implement your own version after. Some of the later content feels less well explained. For example, the Travelling Salesman Problem outlines code to run the algorithm, but doesn't really talk about how this code applies to the problem. When the code involves bitwise operations, I would hope there's even more explanation how how it's related.
By Jane sobey on 1/31/2024
Hi Will!!!! Hope all is well! This course filled in the comp sci gaps in my graph theory knowledge. I loved the pseudocode that went along with the content, and the graphics made it easier to understand. Thank you for not having proofs (you'll leave those to the viewer lol). Message Logan or myself whenever! It's always nice to catch up!
By John Keen on 6/6/2022
I jumped right into my algorithms and data structures class and glossed right over a couple of details. This program helped me learn some of the details and gave me a solid abstract way of thinking about algorithms so that I could find my own solutions.
By kurmala TarunTeja on 5/25/2022
I DIDN'T THOUGHT THAT HE WILL EXPLAIN ALL ALGORITHMS AND THEIR SOURCE CODE WITH THE IMPLEMENTATION OF ALGORITHMS. GUYS DON'T MISS THIS COURSE ESPECIALLY FOR THE INDIAN STUDENT. SOME TEACHERS WILL TELL TO BYHARD BUT LISTEN TO IT ONCE OR TWICE DURING THE LECTURES IN THIS COURSE. YOU CAN REMEMBER LIKE NEVER BEFORE
By Vijay Bhatt on 12/10/2021
This course is awesome in terms of its presentation style, animations used to shorten the amount of time. Also, instructor maintains a git repository wherein we can go and understand the implementations in code. He absolutely did a wonderful job by creating such a crisp and clear course on graph theory. It is helping my problem solving skills and I am improving with this everyday. I wish all the good life to the instructor.
By Karthik Rangaraju on 6/12/2020
Great teacher, has the ability to explain complex graph theory really well. William, I'm looking forward to Dynamic Programming series. You should definitely do more of these!
By Ibrahim HALOUANE on 3/6/2020
Great course, William did a great job collecting many Graph Algorithms and explaining them by visual examples, if you're not comfortable learning code from screen this can be hard for you, otherwise you won't find a better explanation of Graph theory online.
By Craig Daly on 1/2/2019
I was looking for a good overview of graph algorithms. This course provided this and I will definitely be referencing this content in the future. So, in general this course will act as a great reference source for graph algorithms. A few more exercises would be helpful to reinforce many of the concepts. Also, I personally would prefer if the code were provided in python as I am more comfortable using python as a programming language. Thanks for putting this together!
By Thibaud LE GALL on 12/5/2018
It was an interesting course. It lacks a bit exercises and even though it gives a good understanding of several algorithms it fails to give a concrete understanding. Meaning that, without previous experience or personnal interest in applying the algorithms, you will have understood those algorithms but might be left in a situation where you don't understand in which situation which algorithm is better suited. On this matter, the last couple of videos are great. Giving you the understanding, the intuition and in what context and how to apply the flow graph to problems. Regards
Quality Score
No CourseDuck member has rated this course yet. Taken it? Give each part a thumbs up or down.
Overall Score : 92 / 100






