【精编】实验报告:图的存储结构和遍历.pdf
《【精编】实验报告:图的存储结构和遍历.pdf》由会员分享,可在线阅读,更多相关《【精编】实验报告:图的存储结构和遍历.pdf(9页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、1 武汉东湖学院实验报告学院:计算机科学学院专业计算机科学与技术2016年11月18日姓名付磊学号20班级计科一班指 导老师吴佳芬课 程名称数据结构成绩实 验名称图的存储结构和遍历1实验目的(1)了解邻接矩阵存储法和邻接表存储法的实现过程。(2)了解图的深度优先遍历和广度优先遍历的实现过程。2 2实验内容1.采用图的邻接矩阵存储方法,实现下图的邻接矩阵存储,并输出该矩阵.2.设计一个将第1 小题中的邻接矩阵转换为邻接表的算法,并设计一个在屏幕上显示邻接表的算法3.实现基于第2 小题中邻接表的深度优先遍历算法,并输出遍历序列4.实现基于第2 小题中邻接表的广度优先遍历算法,并输出遍历序列3实验环
2、境Visual C+3 4实验方法和步骤(含设计)我们通过二维数组中的值来表示图中节点与节点的关系。通过上图可知,其邻接矩阵示意图为如下:V0 v1 v2 v3 v4 v5V0 0 1 0 1 0 1V1 1 0 1 1 1 0V2 0 1 0 0 1 0V3 1 1 0 0 1 1V4 0 1 1 1 0 0V5 1 0 0 1 0 0此时的“1”表示这两个节点有关系,“0”表示这两个节点无关系。我们通过邻接表来在计算机中存储图时,其邻接表存储图如下:4 5程序及测试结果#include#include int visited 6;typedef struct int a66;int n;m
3、graph;typedef struct ANode int adjvex;struct ANode*nextarc;ArcNode;typedef struct Vnode ArcNode*firstarc;VNode;typedef VNode AdjList6;typedef struct AdjList adjlist;int n;ALGraph;void mattolist(mgraph g,ALGraph*&G)int i,j;ArcNode*p;G=(ALGraph*)malloc(sizeof(ALGraph);for(i=0;iadjlisti.firstarc=NULL;f
4、or(i=0;i=0;j-)ifij!=0)p=(ArcNode*)malloc(sizeof(ArcNode);p-adjvex=j;p-nextarc=G-adjlisti.firstarc;G-adjlisti.firstarc=p;G-n=;void dispadj(ALGraph*G)5 int i;ArcNode*p;for(i=0;in;i+)p=G-adjlisti.firstarc;printf(%d:,i);while(p!=NULL)printf(%d,p-adjvex);p=p-nextarc;printf(n);void dfs(ALGraph*G,int v)Arc
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 精编 实验 报告 存储 结构 遍历
限制150内