一、目的和要求(需求分析):
1、掌握邻接表的存储结构以及邻接表的建立和操作。
2、 构造一个无向图的邻接表,要求从键盘输入图的顶点数和图的边数,并显示所构造的邻接表)
实验拓展:1. 构建有向图的邻接表
2. 判断边是否存在
3. 求顶点的度数
以下是代码:
#include
#include
#include
#define vnum 20
using namespace std;
typedef struct arcnode
{
int adjvex; //边所对应的顶点编号
struct arcnode * next; //指向下一条边的指针
}ArcNode;
typedef struct vexnode
{
int vertex; //顶点编号
ArcNode *first; //指向第一条依附该顶点的边的指针
}AdjList[vnum];
typedef struct
{
AdjList adjlist;
int vexnum,arcnum; //顶点和边的个数
}Graph;
void Init(Graph *GA,int a,int b) //初始化
{
int i;
GA->vexnum=a;</