and a set of edges between the vertices $E$, where an edge between distinct vertices $i$ and $j$ will be denoted by the pair $(i,j)$. In this paper, we use the terms “vertex” and “node” synonymously. The *order* of a graph is the total number of vertices in the graph, $|V|$. It will be useful for the purposes of this paper to work with *weighted* graphs, where we specify a weight $w_{ij}\in{\mathbbm{R}}$ for each pair of vertices ${\left(i,j\right)}\in V\times V$. Two vertices $i$ and $j$ are said to be *disconnected* if $w_{ij}= 0$, and connected by an edge with weight $w_{ij}\ne 0$ otherwise. Thus, unweighted graphs may be thought of as graphs with unit weight on every edge.

Finally, the graphs we consider here will be *simple*, meaning:

-   The edges have no notion of direction. In other words, $w_{ij} = w_{ji}$ for all $i,j\in V$.

-   There are no self-edges, i.e., $w_{ii}=0$ for all $i\in V$.

-   Any two vertices have at most one edge between them.

Henceforth, graphs will be simple and weighted, unless otherwise specified.

The information contained in a graph can be represented as a matrix known as the *adjacency matrix*, whose rows and columns are 