题目:图的邻接矩阵表示法
注意:本文中所面向的图是有向图
一、初步框架
1.头文件:
#include <stdio.h>
#include <stdlib.h>
2.定义邻接矩阵的维数(这里以5x5为例):
#define MaxVertex 5
3.邻接矩阵的结构体:
//邻接矩阵的结构体
typedef struct MatrixGraph{
int vertexCount; //图的点数
int edgeCount; //图的边数
int matrix[MaxVertex][MaxVertex]; //二维数组,表示邻接矩阵
char data[MaxVertex]; //一维数组,存放每个点的数据
}*Graph;
4.创建邻接矩阵函数(类似链表中创建头结点的函数):
Graph createGraph(){
Graph graph = (Graph)malloc(sizeof(struct MatrixGraph));
graph -> edgeCount = graph -> vertexCount = 0; //点数边数置为0
for(int i = 0; i < MaxVertex; i++){
for(int j =