已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第四次实验报告 图的邻接表存储实现及深度优先遍历 学号0708140119 电子072 姓名 陆萍萍一、 问题描述1、 程序所能达到的基本功能 构建以邻接表形式存储的表及实现深度优先遍历并输出结果。 2、 输入的形式和输入值的范围: 根据提示进行输入:先输入要构建的表的结点数和边数,要求是整型;输入各结点的代号,这里用char型,也可在源程序中改变其它形式;输入各边的头结点和尾结点的代号;3、 输出的形式 若正常输入,则输出深度优先遍历的最后结果。用各结点的代码表示。测试数据要求第一组数据: 结点数和边数:4 4 结点名称:a b c d 边:a-b a-c b-c c-d 输出a-b-c-d-over!第二组数据:图如下:输出a-b-c-d-e-f-g-over!4、 概要设计1、 抽象数据类型,它们的作用/图的结点类templateclass TVex;/图类templateclass Graph/链表存储2主程序流程及模块调用关系(1) 主程序模块: void main构造一个图,对T实例化(char)。调用Graph中的Create函数;调用Graph中的DFS函数;(2)调用关系如下TemplateTlinklistTemplateTvex TemplateGraph2、 核心算法的粗线条伪码 5、 详细设计(要求主要变量和语句加注释)1、 抽象数据类型的实现:包括类型定义和各个操作的实现。1) TVex的详细设计(1)私有数据类型的定义private: T m_elem;TLinklist m_arcs; 2)Graph的详细设计(1)私有数据类型的定义private:TVex Vextexmaxnum;int vexnum;int arcnum;int kind;int symbolmaxnum;(2)公有函数成员的定义Graph();void Create();int LocateVex(T v);void DFS();void DFS_IN(int i); (3)具体实现 templatevoid Graph:Create() T v1,v2; int i,j; cout*基本信息*endl; coutvexnumarcnum; cout*结点*endl; for(int l=0;lvexnum;l+) cout请输入第l+1Vextexl.m_elem; cout*边数*endl; for(int k=0;karcnum;k+) cout请输入第k+1v1v2; i=LocateVex(v1); j=LocateVex(v2); Vextexi.m_arcs.InsertLate(j); Vextexj.m_arcs.InsertLate(i); cout*结果*endl;templateint Graph:LocateVex(T v) for(int i=0;ivexnum&Vextexi.m_elem!=v;i+); if(i=vexnum) return -1; else return i;templatevoid Graph:DFS() DFS_IN(0);coutover!endl;templatevoid Graph:DFS_IN(int i)int index; symboli=1; coutVextexi.m_elem; for(int j=0;j+) index=Vextexi.m_arcs.GetElem(j+1); if(index!=-1) if(symbolindex!=1) DFS_IN(index);else break; 2、 其他主要算法的实现将次要算法均设为Graph的公有函数成员3、 主程序的实现Void main()huffmanTree h;int *ww,n;char *cc;coutn;ww=new intn;cc=new charn;cout请依次输入节点名称和权重:endl;for(int i=1;i=n;i+)cout第i个endl;coutcci-1;coutwwi-1;h.CreatehuffmanTree(cc,ww,n);h.huffmanTreecoding();四 .调试分析1、 设计与调试过程中遇到的问题及分析、体会(1) 这个实验较简单,经过对书本上已经给出的c版程序的分析,很容易就写出了对整个实验的大体思路。(2) 这个程序不难,但前提是Tlinklist已经做得做够全面,在这个实验中发现了Tlinklist的很多不足,经过改进,才使得程序简单明了,如在其中增加了获取长度,获取数据,在链表麽增加数据几个函数,解决很多问题。(3) 该程
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 台州市人民医院消化内科专科护士晋升护理专家答辩题库
- 丽水市中医院溶栓药物不良反应处理考核
- 泰州市人民医院护理团队协作考核
- 宁波市中医院皮肤软组织超声考核
- 配电网冗余设计与调度方案
- 企业品牌部年终总结
- 编辑经理年终述职报告
- 智能配电网监控系统建设方案
- 电子气体质量保证体系建设
- 产业园区土地规划与优化方案
- 建筑垃圾现场分拣作业流程方案
- 2022利达消防LD6901 消防控制室图形显示装置(Linux)使用说明书
- 8.2 守护正义(课件)- 2025-2026学年八年级道德与法治上册(统编版2024)
- 储能电池产品售后服务与维保方案
- 胃肠镜检查课件
- (2025年标准)金矿出售转让协议书
- 8 回忆鲁迅先生(课件)语文统编版2024八年级上册
- 新疆电网面试题目及答案
- 2025年药品及制药行业当前市场规模及未来五到十年发展趋势报告
- 审计专硕复试题及答案
- 新能源企业盈利能力分析-以比亚迪股份有限公司为例
评论
0/150
提交评论