⑨讲图论第二课: 图的邻接矩阵表示法

来源:互联网 发布:java中接口是什么 编辑:程序博客网 时间:2024/05/07 15:01
邻接矩阵是表示一个图的常用存储表示。它用两个数组分别存储数据元素(顶点)的信息和数据元素之间的关系(边或弧)的信息。

G的顶点标为v_1,v_2,...,v_n。若(v_i,v_j) \in E(G)A_{ij}=1,否则A_{ij}=0


无向图的邻接矩阵是对称的,有向图的邻接矩阵一般情况下是不对称的。

在有向图中, 统计第 i 行 1 的个数可得顶点 i 的出度,统计第 j 列 1 的个数可得顶点 j 的入度。
在无向图中, 统计第 i 行 (列) 1 的个数可得顶点i 的度


网络的邻接矩阵
若G是网络,则邻接矩阵可定义为:

若i==j则a[i][j]=0;

若i!=j&&(v_i,v_j) \in E(G)则a[i][j]=W(i,j);

否则a[i][j]=OO;


邻接矩阵表示法中图的类型定义:

#define  MAXSIZE  100        /*图的顶点个数*/typedef int datatype;typedef struct  {   datatype vexs[MAXSIZE];  /*顶点信息表*/   int edges[MAXSIZE][ MAXSIZE] ;/ *邻接矩阵*/   int  n,e ;                       /*顶点数和边数*/ }graph; 


原创粉丝点击