If you have ever used a navigation service to find the optimal route and estimate time to destination, you have used algorithms on graphs. Graphs arise in various real-world situations, as there are road networks, water and electricity supply networks, computer networks and, most recently, social networks! If you are looking for the fastest time to get to work, cheapest way to connect set of computers into a network or efficient algorithm to automatically find communities and opinion leaders in Facebook, you are going to work with graphs and algorithms on graphs. In this course, part of the Algorithms and Data Structures MicroMasters program, you will learn what a graph is and its most important properties. You will learn several ways to traverse graphs and how you can do useful things while traversing the graph in some order. We will also talk about shortest paths algorithms. We will finish with minimum spanning trees, which are used to plan road, telephone and computer networks and also find applications in clustering and approximate algorithms.