What is a graph? A graph is a set of vertices where some pairs of these vertices are linked with edges. If every vertex is linked with every other vertex, we say the graph is a complete graph. On the contrary, if it has no edges, the graph is said to be empty. These are, of course, extremes that are rarely encountered in practice, as graphs have varying degrees of density; the more edges it has proportional to the number of vertices, the more dense we say it is.
Depending on what algorithms we intend to run on a graph and how dense is it expected to be, we can choose how to appropriately represent the graph in memory. If the graph is really dense, it pays off to store it as a square N x N matrix, where 0 in the nth row and mth column means that the n vertex is not connected to the m vertex. A diagonal entry expresses a node connection to itself. This representation is called the adjacency matrix.
If there are not many edges and we need to traverse the whole edge...