图的表示方法
1.一种表示图的直观方法是使用二维数组,也称为邻接矩阵。通过邻接矩阵我们可以马上判断出顶点i和j之间是否存在一条边,只需要检查矩阵中行i和列j相交处是否为非零值。对于无向图,如果矩阵是对称的,如果行i和列j处存在一个项,那么行j和列i处也存在一个项。
2.另一种表示图的直观方法是使用链表数组,也称为邻接表。我们为每个顶点保存一个链表,其中每个节点代表一个连接到该顶点的顶点。对于无向图,如果在i的链表中存在节点j,则在j的链表中必定存在节点i。
邻接矩阵使用的空间正比于顶点数目的平方,而邻接表使用的空间正比于顶点数和连接边数目之和。