image
image

Graph Theory Algorithms: How They Work and Why They Matter

Delve into graph theory algorithms, covering topics such as graph representation, traversal algorithms, Dijkstra's shortest path, topological sort and more.

206 views
Last updated 4/2024 English

Buy only this course for S$89.25 S$17.85

Or

Add to Wishlist
image

Overview

This course provides students with a comprehensive and in-depth analysis of the algorithms used in computer science, with a specific focus on Graph Theory. 

Through a series of informative videos, students will gain a thorough understanding of the diverse range of algorithms employed in this field of study. The course covers key areas such as the fundamentals of graph theory, graph traversal algorithms, shortest path algorithms, and graph coloring algorithms. 

By delving into these topics, students will develop a solid foundation in graph theory and its associated algorithms.

Graph Representation and Storage

Techniques for storing and representing graphs in a computer system.

Common Graph Theory Problems

Real-world graph theory problems encountered in various applications.

Graph Traversal Algorithms

Exploration of well-known graph traversal algorithms such as Depth-First Search (DFS) and Breadth-First Search (BFS).

Dijkstra's Shortest Path Algorithm

Detailed exploration of both the lazy and eager versions of Dijkstra's shortest path algorithm.

Topological Sort

Understanding the concept of topological sort, methods for finding one, and its practical applications.

Detecting Negative Cycles and Finding Shortest Paths

Learning about the detection of negative cycles and the process of finding shortest paths using the Bellman-Ford and Floyd-Warshall algorithms.

Bridges and Articulation Points in Graphs

Discovering the identification of bridges and articulation points within graphs.

Strongly Connected Components

Understanding and detecting strongly connected components using Tarjan's algorithm.

Solving the Traveling Salesman Problem

Application of dynamic programming to solve the traveling salesman problem.

This course equips learners with a thorough understanding of these fundamental graph theory concepts and algorithms, preparing them for practical implementation in computer science.

Who this course is for

Anybody ready for a deep dive into graph theory!

Testimonials
  1. The algorithms are illustrated very well with good graphics ~ Shishir V
  2. Very complete and detailed refresher of Graph Theory, lots of practical examples ~ C Salazar
  3. It was awesome. I gained confidence after going through concepts on Graphs theory. Difficult concepts were explained in very lucid way ~ A Natarajan
  4. Everything was covered exceptionally well and I found this course incredibly useful ~ Pranchal N
  5. This was amazing, and motivating. Your course helped me to get back into learning algorithms that I had always considered too difficult to understand ~ Manojkumar M
  6. Great course that explains the theory with visual examples of the different algorithms. Also, examples of coding each of the different algorithms and usages ~ J Agudelo
  7. 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! ~ Karthik R
  8. 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 ~ I Halouane
  9. I took this course to learn about Graph theory. But I have a feeling now that i can master this. Everything explained here in so intuitive way that those who hate it will fall in love with Graph theory ~ M Irshad
What you'll learn
  1. Storage and representation of graphs (networks) on a computer
  2. Common graph theory problems
  3. Breadth first search algorithm
  4. Depth first search algorithm
  5. Various tree algorithms including: the height or a tree, finding the center of a tree, rooting a tree, and etc...
  6. Dijkstra's algorithm
  7. Topological sort algorithm
  8. Shortest/longest path on an acyclic graph
  9. Bellman-Ford's algorithm
  10. Floyd-Warshall all pairs shortest path algorithm
  11. Finding bridges/articulation points
  12. Finding strongly connected components (Tarjan's)
  13. Travelling salesman problem (TSP)
  14. How to find the maximum flow of a flow graph
  15. Finding bipartite graph matchings
  16. Various network flow algorithms including: Edmonds-Karp, Capacity Scaling, and Dinic's algorithm
  17. Kruskal's Minimum Spanning Tree algorithm
  18. The Lowest Common Ancestor (LCA) Problem
Requirements

Exposure to computer science fundamentals (e.g: data structures, recursion, classes, OOP).

Course Content
5 Sections 46 Lectures 9h 3m total length