一、邻接矩阵
#include <iostream>
using namespace std;
#define MaxVertexNum 100 //顶点最大数目//邻接矩阵存储结构
typedef struct{char Vex[MaxVertexNum]; //顶点表int Edge[MaxVertexNum][MaxVertexNum]; //边表int vexnum,arcnum; //图当前顶点数和弧数
}MGraph;
二、邻接表
#include <iostream>
using namespace std;
#define MaxVertexNum 100 //顶点最大数目//邻接表存储结构
typedef struct ArcNode{ //边表结点int adjvex; //该弧所指向的顶点的位置struct ArcNode *next; //指向下一条弧的指针int info; //网的边权值
}ArcNode;
typedef struct VNode{ //顶点表信息char data; //顶点信息ArcNode *first; //指向第一条依附该顶点的弧的指针
}VNode,AdjList[MaxVertexNum];
typedef struct{AdjList vertices; //邻接表int vexnum,arcnum; //图的顶点数和弧数
}ALGraph; //ALGraph是以邻接表存储的图类型