有向图和无向图的邻接矩阵
首先区分有向图和无向图
有向图即两点之间是有方向的,无向图即没有方向的,顾名思义
由于有向图和无向图的边都是没有权值的,所以我们用1表示某两顶点之间有边存在,用0表示这两点之间是没有边存在的。
首先,我们看G2,他有5个顶点,所以,我们用一个(nn)55的数组来存这个图,也就是说,我们要建一个这么大的邻接矩阵;
行就分别表示v1 v2 v3 v4;
列也是v1 v2 v3 v4;
我们需要了解的一点就是!v(i,j)表示vi到vj之间是否有边;
- 先看v1这个顶点,他和v2 v4相连;
看第一行(也就是v1这一行),找到v2和v4下面都写上1; - 再看v2这个顶点,他和v1 v3 v5相连;
看第二行(也就是v2这一行),找到v1和v3、v5下面都写上1; - 再看v3这个顶点,他和v2 v4 v5相连;
我们看第三行(也就是v3这一行),找到v2和v4、v5下面都写上1; - 看v4这个顶点,他和v1 v3相连;
看第四行(也就是v4这一行),找到v1和v3下面都写上1; - 看v5这个顶点,他和v2 v3相连;
看第五行(也就是v5这一行),找到v2和v3下面都写上1;
有向图也是类似的,不过有向图是指出箭头的那个算是1,被指的是不算的。
邻接矩阵可以用二维数组来实现。