Python求解:利用邻接矩阵判断有向图的连通性
WoW,让我们先来看看我们要解决的小问题:
—— 将任意一个有向图G采用矩阵输入,图形化输出图G,利用可达矩阵判定图G是否连通:
(PS:判断图的连通性至少可以有[1].并查集 [2].DFS [3].BFS 三种方法,关于其他求解方法,详见:https://blog.csdn.net/weixin_44646116/article/details/95523884)
当然,今天我们主要从数学角度探讨如何利用邻接矩阵来判断图的连通性:
首先,我们需要一点数理知识:
(一)邻接矩阵(Adjacency Matrix)是表示顶点之间相邻关系的矩阵。设G=(V,E)是一个图,其中V={v1,v2,…,vn}
V和E集合,其中,V是顶点,E是边。因此,用一个一维数组存放图中所有顶点数据;
一个二维数组存放顶点间关系(边或弧)的数据,这个二维数组称为邻接矩阵。邻接矩阵又分为有向图邻接矩阵和无向图邻接矩阵;
在图的邻接矩阵表示法中:
① 用邻接矩阵表示顶点间的相邻关系
② 用一个顺序表来存储顶点信息
给出一个 具体的邻接矩阵(无边权值):