为了测试图的搜索算法、拓扑排序、关键路径、最小生成树、最短路径等算法,特意写了图的生成算法,包括以邻接表和邻接矩阵两种存储结构的图的生成算法。
1. 存储结构定义
/* headfiles/graph.h */
#ifndef GRAPH_H_INCLUDED
#define GRAPH_H_INCLUDED
#include <limits.h>
#define NUM 20
//matrix graph
typedef struct { //邻接矩阵
int vexs[NUM]; //vertex vector, stores data of every vertex
int arcs[NUM][NUM]; //adjMatrix arcs;
int vexnum, arcnum;
}MGraph;
//ALGraph
typedef struct ArcNode { //邻接表