实验 6:图的实验 1 -有向图的邻接表存储实现
一、实验目的 1 2 3 二、实验内容 1、自己确定一个简单无向图(顶点数、和相关结点信息)利用邻接矩阵来实现存储。实现图的构造,并完成: 1) 用深度优先和广度优秀两种算法对图进行遍历,输出顶点序列数据; 2) 以合理的格式,输出各个顶点的邻接点; 2、试设计一个程序,对一个有向简单图,完成上题同样的任务 。 三、设计与编码 1.本实验用到的理论知识 (1)邻接表是顺序存储结构与链式存储结构相结合的存储方法,类似于树的孩子链表表示法; (2)在邻接表中涉及入度与出度,邻接与(到)的概念; (3)需要用结构体定义顶点表结点和边表结点。 2.算法与设计 (1)定义一个 ALGraph类 class ALGraph { public: ALGraph(char a[],int n,int e); //构造函数 ~ALGraph(); //析构函数 void DFSTraverse(int v); //深度优先遍历图 void BFSTraverse(int v); //广度优先遍历 void Print(char a [],int length); private: VertexNode adjlist[MaxSize]; //存放顶点表的数组 int vertexNum,arcNum; //图的顶点数和边数 }; 3.代码 #include<iostream.h> const int