#define _CRT_SECURE_NO_WARNINGS 1 #define MaxVertexNum 100//最大顶点数 #define Maxlnt 32767//表示极大值,即∞,可用于有权值的图中 #include<stdio.h> #include<malloc.h> #include<string.h> //邻接矩阵无向图实现 typedef struct { char Vex[MaxVertexNum];//顶点表 int Edge[MaxVertexNum][MaxVertexNum];//邻接矩阵,边表 int vexnum, arcnum;//图的当前顶点数和边数/弧数 }MGraph; void InitMGraph(MGraph* G, int x) { G->vexnum = x; for (int i = 0; i < x; i++) { for (int j = 0; j < x; j++) { G->Edge[i][j] = 0;//初始值为0 } } } bool AddEdge(MGraph* G, int i, int j) { G->Edge[i][j] = 1; return true; } void PrintGraph(MGraph* G) { printf("MGraph with %d vertices:\n", G->vexnum); for (int i = 0; i < G->vexnum; i++) { for (int j = 0; j < G->vexnum; j++) printf("%d", G->Edge[i][j]); printf("\n"); } } int main() { MGraph G; InitMGraph(&G, 5);//初始化邻接矩阵 AddEdge(&G, 0, 1); AddEdge(&G, 0, 2); AddEdge(&G, 1, 3); AddEdge(&G, 2, 3); AddEdge(&G, 3, 4); PrintGraph(&G); return 0; }
新手写码,不喜勿喷
邻接矩阵无向图实现
最新推荐文章于 2024-10-05 12:07:50 发布