A path in a graph is exactly what you think a path is. For example, if I get a graph of a city, then the path is a way to get from one point to another one. There are many different path and some are shorter, some are longer. And in graph theory and in real life too, we often want to find the shortest path between two points. In order to formally define a path, we need to start with a walk. A walk in a graph is a sequence of edges, such that each edge starts in a vertex where the previous edge ended. The length of a walk is a number of edges in it. Know that a walk contains the same edge several times, but a path is a walk where all edges are the distinct. In a path, you never take the same edge twice, all edges are distinct. Although a path can go through the same vertex several times, a simple path is a path where all vertices are distinct. You never return to a vertex you already have visit. Now, let's see some examples. Here is a graph and for convenience in every vertex and every edge has a name. Here's an example of a walk. You can start from the vertex v_6, take the edge e_1, then edge e_2, e_4, e_5, e_3, e_1. You see every edge starts exactly where the previous one ended. So, it is a walk and the length of this walk is six, because there are six edges in it. But we take the edge you want twice. So this walk is not a path, in path all edges are distinct. Here is an example of a path. You take the edge e_7, then the edge e_6, e_4, and e_5. Now, length of this path is four and clearly it doesn't work because you always start where the previous edge ended and also all edges are distinct, so it is a path not only a walk. But it's not a simple path, because we've visited the vertex v_2 twice. A simple path has all vertices distinct. Here's an example of a simple path. Exit edge e_7, then e_6, e_2 and e_3. Average starts where the previous one ended, all edges and all vertices are distinct. So they go with a simple path. And the length of this path is four, because they're four edges in it. Sometimes it's convenient to specify a path not by list of edges, but by a list of vertices. For example I can say is that there is a path before v_5 v_2. Just the same as to say there is a path with edges e_2 and e_4. Note that all those three there are three vertices, the length of the path is still two, because the length of the path is a number of edges in it, three vertices but two edges. So the length is two. Similarly, we can define cycles. A cycle in a graph is a path whose first and last vertices are the same. You start somewhere, you go and return to the original vertex. This is a cycle. Know that a cycle can never have the same edge twice, because cycle is a path where the first and last vertices are the same and all edges in a path are distinct. So all edges in a cycle must also be distinct. A simple cycle is a cycle where all vertices are distinct, except for the first one which must be the same as the last one. This is a cycle. But you can only take this vertex twice, at the very beginning and in the very end. So a simple path is a path where all vertices are distinct, and a simple cycle is a cycle where all vertices are distinct, except for the first one which has to be taken twice. Here are some examples, the same graph. Here we have a cycle of length six. It takes the edge e_2, e_3, then e_8, e_4, e_7, e_6. We started from the vertex v_5 and we ended there. So, it is a cycle. It doesn't take any edge twice, it is a cycle. But it visits the vertex v_5 three times, so it's not a simple cycle. But this is a simple cycle. You take the edge e_5 then the edge e_4, e_2 and e_3. You start in the vertex v_3 and you end it there. It is a cycle, you have never taken the same vertex twice except for the first time. So, it is a simple cycle.