中南大学数据结构实验报告

中南大学数据结构实验报告

ID:29756307

大小:20.02 KB

页数:14页

时间:2018-12-23

中南大学数据结构实验报告_第1页
中南大学数据结构实验报告_第2页
中南大学数据结构实验报告_第3页
中南大学数据结构实验报告_第4页
中南大学数据结构实验报告_第5页
资源描述:

《中南大学数据结构实验报告》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划中南大学数据结构实验报告  数据结构实验报告  班级:信安1401  姓名:  学号:  实验日期:XX年12月  实验三图的遍历  一、实验目的:  1.熟悉图的各种存储结构及构造算法;  2.熟练掌握图的两种搜索路径的遍历。  二、实验内容:  1.以邻接矩阵为存储结构,实现无向图的深度优先遍历和广度优先遍历。  2.分别输出每种遍历下的结点访问序列.从图中某个顶点出发,沿着某条搜索路径对图中每个顶点各做一次且仅做一次访问。  三、概要设计:  数据类型及函数定义 

2、 定义图  typedefstruct{  intV[M];目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  intR[M][M];  intvexnum;  }Graph;  创建图  voidcreatgraph(Graph*g,intn)  打印图的邻接矩阵  voidprintgraph(Graph*g)  访问顶点  voidvisitvex(Graph*g,intvex)  深度

3、递归遍历  voiddfs(Graph*g,intvex)  队列的基本操作  定义队列  typedefstruct{  intV[M];  intfront;  intrear;  }Queue;  判断队列是否为空  quempty(Queue*q)  入队操作  enqueue(Queue*q,inte)目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  出队操作  dequeue(Q

4、ueue*q)  广度遍历  voidBESTraverse(Graph*g)  本程序包含四个模块:  主程序模块  voidmain()  {构造一个图;  打印图的邻接矩阵  进行深度优先遍历图;  进行广度优先遍历图;};  四、详细设计:  #defineM20  #include  #include  #include  /*定义图*/  typedefstruct{  intV[M];  intR[M][M];  intvexnum;  }Graph;目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业

5、的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保从业人员的业务技能及个人素质的培训计划  /*创建图*/  voidcreatgraph(Graph*g,intn)  {inti,j,r1,r2;  g->vexnum=n;  /*顶点用i表示*/  for(i=1;iV[i]=i;}  /*初始化R*/  for(i=1;iR[i][j]=0;}  /*输入R*/  printf("PleaseinputR(0,0END):");  scanf("%d,%d",&r1,&r2);  while(r1!=0&&r2!=0)  {g->R[r

6、1][r2]=1;  g->R[r2][r1]=1;  scanf("%d,%d",&r1,&r2);}}  /*打印图的邻接矩阵*/  voidprintgraph(Graph*g)  {inti,j;  for(i=1;ivexnum;i++)  {for(j=1;jvexnum;j++)  {printf("%2d",g->R[i][j]);}  printf("");}}目的-通过该培训员工可对保安行业有初步了解,并感受到安保行业的发展的巨大潜力,可提升其的专业水平,并确保其在这个行业的安全感。为了适应公司新战略的发展,保障停车场安保新项目的正常、顺利开展,特制定安保

7、从业人员的业务技能及个人素质的培训计划  /*全局变量:访问标志数组*/  intvisited[M];  /*访问顶点*/  voidvisitvex(Graph*g,intvex)  {printf("%d",g->V[vex]);}  /*获取第一个未被访问的邻接节点*/  intfirstadjvex(Graph*g,intvex)  {intw,i;  for(i=1;ivexnum;i++)  {if(g->R[vex][i]==1&&visited[i]==0)  

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。