下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、图遍历操作实验报告 实验报告 姓名: 班级: 12 南航网络 学号: 实验 题目 图的遍历操作 实验时间 2021-11-27 实验地点 指导教师 尚鲜莲 实验目的与要求: 目的:熟练掌握图的的两种存储结构;熟练掌握图的深度优先遍历和广度优先遍历算法;能解决简单的应用问题。 要求: 分别采用邻接矩阵和邻接表存储结构,完成图的深度优先遍历(dfs)和广度优先遍历(bfs)的操作。搞清楚 bfs 算法中队列的作用。 需求分析和实现功能说明: : 在 test4.c 中填写入相应语句,使之能顺利完成图的深度优先和广度优先遍历操作。测试数据为:无向图 gl,v=v0,v1,v2,v3,v4 ,e=(
2、v0,v3),(v1,v2),(v1,v3),(v1,v4),(v2,v4),(v3,v4),起始顶点为v0。 将空缺语句补充完整,并写出输出结果。 ) 算法设计(最好给出流程图): : 算法程序(源程序代码) #define vex_num 5 #define maxsize 10 #include stdio.h typedef char vextype; typedef struct vextype vexsvex_num; int arcsvex_numvex_num; mgraph; typedef struct vextype elemvex_num; int front,rear
3、; sueue; sueue q; int visitedvex_num=0; void creat_mgraph( mgraph *g,int e); void dfs_m( mgraph *g,int i); void bfs( mgraph *g,int k); void initqueue(sueue *sq); int enqueue(sueue *sq,vextype x); int delqueue(sueue *sq,vextype *y); int queueempty(sueue *sq); void main() int e,i,j; mgraph *g; printf(
4、qing shu ru wu xiang tu bian de shu mu); scanf(%d,e); creat_mgraph(g,e); printf(qing shu ru bian li de qi shi ding dian); scanf(%d,i); dfs_m(g,i); for (j=0;jvex_num;+j) visitedj=0; bfs(g,i); void creat_mgraph( mgraph *g,int e) int i,j,k; printf(shu ru ge ding dian xin xi:); for (i=0;ivex_num;+i) /*
5、scanf(%c,g-vexsi);*/ g-vexsi=getch(); for(i=0;ivex_num;+i) printf(%d %cn ,i,g-vexsi); /*getch();*/ for (i=0;ivex_num;+i) for (j=0;jvex_num;+j) g-arcsij=0; printf(shu ru ge bian de ding dian xu hao i,j:); for(k=0;ke;k+) scanf(%d,%d,i,j); g-arcsij=1;g-arcsji=1; /* creat_mgraph */ void dfs_m( mgraph *g
6、,int i) int j; printf(%3c,g-vexsi); visitedi=1; for (j=0;jvex_num;j+) if(g-arcsij=1) (!visitedj) dfs_m(g,j); /*dfs_m */ void bfs( mgraph *g,int k) int x,i,j; sueue *q; initqueue(q); printf(%3c,g-vexsk); visitedk=1; x=enqueue(q,g-vexsk); while(!queueempty(q) x=delqueue(q,g-vexsi); for(j=0;jvex_num;j+
7、) if(g-arcsij=1) (!visitedj) printf( %3c,g-vexsj); visitedj=1; x=enqueue(q, g-vexsj); /*bfs*/ void initqueue(sueue *sq) sq-front=sq-rear=0; /* initqueue*/ int enqueue(sueue *sq,vextype x) if( (sq-rear+1) % maxsize = sq-front) return 0; sq-elemsq-rear=x; sq-rear=(sq-rear+1) % maxsize; return 1; printf(sq-rear is :%dn,sq-rear); /* enqueue*/ int delqueue(sueue *sq,vextype *y) if(sq-front=sq-rear) return 0; *y=sq-elemsq-front; sq-front=(sq-front+1) % maxsize ; return 1; /* delqueue*/ int queueempty(sueue *sq) return (sq-front=sq-rear); 上机调试情况说明(包括调试数据、调试过程中遇到的问
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年个旧市医共体卡房分院招聘备考题库及一套答案详解
- 2026年中国航空工业集团公司北京航空精密机械研究所招聘备考题库及完整答案详解1套
- 2026年厦门市集美区后溪中学产假顶岗会计、产假顶岗教师招聘备考题库及答案详解1套
- 2026年南京大学集成电路学院助理招聘备考题库及一套参考答案详解
- 2026年中材建设有限公司招聘备考题库含答案详解
- 2026年佛山市顺德区莘村中学招聘临聘俄语教师备考题库及参考答案详解1套
- 2026年冬季如皋市卫健系统部分单位公开招聘合同制工作人员备考题库及一套参考答案详解
- 2026年博思睿招聘(派遣至海宁市图书馆)备考题库带答案详解
- 2026年国药(大连)医院管理有限公司招聘备考题库含答案详解
- 2026年宁波分行跨境金融部客户经理(国际业务方向)备考题库及1套完整答案详解
- 2026届云南省昆明市西山区民中数学高一上期末考试模拟试题含解析
- 2025年大学第一学年(食品营养与健康)营养学基础测试题及答案
- 2025-2030乌干达基于咖啡的种植行业市场现状供需分析及投资评估规划分析研究报告
- 2026年共青团中央所属单位招聘66人备考题库及答案详解一套
- 人民警察法培训课件
- 2026年哈尔滨职业技术学院单招职业适应性考试题库参考答案详解
- 2025云南昆明巫家坝建设发展有限责任公司及下属公司第四季度社会招聘31人历年真题汇编带答案解析
- 输尿管切开取石课件
- 小猫绝育协议书
- 66kV及以下架空电力线路设计标准
- 2025年浙江乍浦经济开发区(嘉兴港区)区属国有公司公开招聘28人笔试考试备考试题及答案解析
评论
0/150
提交评论