本章介绍用一个邻接矩阵阵无向圖在""中已经对图进行了理论介绍,这里就不再对图的概念进行重复说明了和以往一样,本文会先给出C语言的实现;后续再分别给出C++和Java蝂本的实现实现的语言虽不同,但是原理如出一辙选择其中之一进行了解即可。若文章有错误或不足的地方请不吝指出!
用一个邻接矩阵阵无向图是指通过用一个邻接矩阵阵表示的无向图。
上图右边的矩阵是G1在内存中的用一个邻接矩阵阵示意图A[i][j]=1表示第i个顶点与第j个頂点是邻接点,A[i][j]=0则表示它们不是邻接点;而A[i][j]表示的是第i行第j列的值;例如A[1,2]=1,表示第1个顶点(即顶点B)和第2个顶点(C)是邻接点
这里介绍提供了两个创建矩阵的方法。一个是用已知数据另一个则需要用户手动输入数据。
2.1 创建图(用已提供的矩阵)
注意:该方法创建的无向图就是上面图G1。
2.2 创建图(自己输入)
create_graph()是读取用户的输入将输入的数據转换成对应的无向图。
* 创建图(自己输入)
* 创建图(用已提供的矩阵)
1.输入总顶点数和总边数
2.依次输入點的信息存入顶点表中是每个表头结点的指针域初始化为NULL
3.创建邻接表。依次输入每条边依附的两个顶点确定这两个顶点的序号i和j之后,将此边结点分别插入Vi和Vj对应的两个边链`表头部
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。