【项目1】实现下图的邻接矩阵和邻接表的存储,要求:
-
建立如图所示的有向图G的邻接矩阵,并输出;
邻接矩阵有向图结构声明:
#define MAXV <最大顶点个数>
#define LIMITLESS 9999
typedef struct //图的定义
{ int n,e; //顶点数、边数
int edges[MAXV][MAXV]; // 邻接矩阵
VertexType vexs[MAXV]; //存放顶点信息
}MGraph;
其中VertexType是用来存放定点信息。其结构声明如下
typedef struct
{ int no;
InfoType info;
}VertexType;
上图的邻接矩阵如下:
【项目1】实现下图的邻接矩阵和邻接表的存储,要求: -
建立如图所示的有向图G的邻接矩阵,并输出;
邻接矩阵有向图结构声明:
#define MAXV <最大顶点个数>
#define LIMITLESS 9999
typedef struct //图的定义
{ int n,e; //顶点数、边数
int edges[MAXV][MAXV]; // 邻接矩阵
VertexType vexs[MAXV]; //存放顶点信息
}MGraph;
其中VertexType是用来存放定点信息。其结构声明如下
typedef struct
{ int no;
InfoType info;
}VertexType;
上图的邻接矩阵如下:
```cpp
#include"graph1.h"
#include<stdio.h>
#include<malloc.h>
int main()
{
int a[6][MAXV]={{0,5,INF,7,INF,INF},{INF,0,4,INF,INF,INF},{8,INF,0,INF,INF,9},{INF,INF,5,0,INF,6},{INF,INF,INF,5,0,INF},{3,INF,INF,INF,1,0}};
MatGraph *p;
createMat(p,a,6,10);
dispMat(p);
destroyMat(p);
}