- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
《数据结构A》课程实验大纲
课程编号:B0300051S 课程名称:数据结构A
课内总学时:56 上机实验学时:8×2
实验课程的性质、目的和任务
性质:《数据结构A》是计算机科学与技术以及相关专业的专业基础课。本实验是《数据结构A》课程的课内上机实验教学环节。
目的和任务:数据结构知识是计算机程序设计的重要理论和实践基础。课程教学包括理论和上机实验两部分。通过上机实验,加深对计算机科学中的组织、表示和处理数据的基本方法的理解,训练学生运用数据结构和算法知识解决应用问题的实际能力。
实验内容、学时分配及基本要求
序号 实验名称 课时 实验内容及要求 开出组数 实验类型 选做 必做 备注 1 线性表的基本运算及多项式的算术运算 2×2 内容:
(1)线性表操作
(在顺序表类SeqList中增加成员函数 void Reverse(),实现顺序表的逆置。
(在顺序表类SeqList中增加成员函数bool Delete(const T x),删除表中所有元素值等于x的元素。若表中存在这样的元素,则删除之,且函数返回true;否则函数返回false。
(编写main函数(设计带表头结点的单链表表示的多项式类和实现(在该类上增加成员函数void PolyMul(Polynominal r),并重载*运算符。
(实现菜单驱动的main函数,测试多项式加法和乘法运算 2 二叉树的基本操作及哈夫曼编码译码系统的实现 2×2 内容:
(1)在二叉链表上设计和实现下列二叉树运算的算法
① 设计递归算法,实现:删除二叉树,求二叉树的高度求二叉树复制二叉树交换二叉树的左右子树② 设计算法,按层次遍历二叉树③ 设计main函数,测试上述每个运算。
提示:二叉树的按层次遍历需要利用队列作为辅助的数据结构,队列的元素类型是指向二叉树中结点的指针类型。
(2)哈夫曼编码和译码系统
①② 设计菜单驱动界面,系统要求重复显示以下菜单项C-编码,D-译码,P-打印,X-退出③要求将输入的电文、编码得到码文及译文保存在不同的磁盘文件中。
提示:修改二叉链表的结点类BTNode,增加一个指向双亲的parent域,修改二叉树类的函数MakeTree设置该域的值;可以通过遍历哈夫曼树,产生每个叶子结点的哈夫曼编码;当遍历访问某个叶结点时,从该叶结点到根的路径可以确定该叶结点所代表的字符的编码。
要求:
(1)掌握二叉链表上实现二叉树基本运算的方法。
(2)学会设计基于遍历的求解二叉树应用问题的递归算法。
(3)理解哈夫曼树的构造算法,学习设计哈夫曼编码和译码系统。
144 设计 √ 3
图的基本运算及飞机换乘次数最少问题 2×2 内容:
图的基本运算
验证教材中关于在邻接矩阵和邻接表两种不同存储结构上实现图的基本运算的算法。
(在邻接矩阵存储结构上实现图的深度和广度优先遍历算法。
(设计主函数,测试上述运算。
提示:扩充MGraph类,在扩充类上增加DFS和BFS函数。
(2)飞机最少换乘次数问题
(设n个,编号为0~n1,m条航线的起点和终点由用户输入提供。寻找一条换乘次数最少的线路方案。
提示:可以使用有向图表示城市间的航线。只要两城市间有航班,则图中这两点间存在一条权为1的边。可以使用Dijkstra算法实现。
思考:如果是城市公交车的最少换乘问题,将如何解决?假如希望使用类似的算法,则图中的边如何设置?
要求:
掌握在图的邻接矩阵和邻接表存储结构实现图的基本运算的算法。
学习使用图算法解决应用问题的方法。
144 验证 √ 4 基本内排序算法的验证和性能比较,改进快速排序算法 2×2 内容:
验证内排序算法,分析算法的时间性能
(验证各种基本排序算法
(分析各算法的最好、最坏和平均情况时间复杂度,以渐近表示法表示。
(产生不同规模和排列状态的数据集,测量算法的实际执行时间;
(比较理论分析和实际运行时间,解释理由。
提示:使用随机数发生器产生随机测试数据;使用系统时钟测量运行时间。
进快速排序算法:
(设计非递归算法,并先处理较小的子序列,后处理较大的子序列;
(当子集合较小时改用直接插入排序;
(解释改进理由;
(测量改进的排序算法的执行时间,与改进前的排序算法运行时间作比较,说明造成差异的原因。
要求:
(1)理解和掌握各种基本排序算法;
(2)学会测量和分析排序算法的时间和空间性能;
(3)改进快速排序算法,理解改进的理由,验证算法改进的效果。
144 设计 √
考核及实验报告
(一) 考核
本课程实验非独立设课,考核方式以学生上机操作和完成设计作业相结合。实验成绩的评定:实验到课率(10
您可能关注的文档
- 《机械CADCAMa》教学大纲.doc
- 《计算机图形学》教学参考书目.doc
- 《离散数学课程实验》大纲.doc
- 《模流分析基础入门》1.doc
- 《软件工程》复习题1和答案.doc
- 《软件工程练习题及参考答案》.doc
- 《商务网站模拟与实现》模板(适用09级信管&电商).doc
- 《数据结构01》复习题_答案.doc
- 《数据结构02》复习题及答案.doc
- 《数据结构》(开放本科)课程教学一体化设计方案.doc
- 小学科学:ESP8266智能插座电路原理与动手实践研究教学研究课题报告.docx
- 《金融开放浪潮下我国多层次监管体系构建与创新研究》教学研究课题报告.docx
- 区域教育质量监测中人工智能应用的数据质量分析与优化策略教学研究课题报告.docx
- 《金融科技监管中的数据治理与合规性要求》教学研究课题报告.docx
- 《3D打印技术在航空航天领域中的多材料制造与复合材料应用》教学研究课题报告.docx
- 《绿色金融发展中的政府职能与市场机制研究》教学研究课题报告.docx
- 《植物工厂多层立体栽培光环境调控技术对植物生长发育节律的调控机制探讨》教学研究课题报告.docx
- 销售团队年度业绩总结.docx
- 银行风险管理与金融危机防范.docx
- 银行网络攻击预警与快速响应机制.docx
最近下载
- 2025年内蒙古时事政治考试试卷带解析必考题.docx VIP
- 人教版数学三年级下册单元试卷【1-8合集,含答案】.pdf VIP
- 2025年内蒙古时事政治考试试卷带解析参考答案.docx VIP
- (答案)奥赛经典-奥林匹克数学中的几何问题---习题与讲解(第1-2章).pdf VIP
- 奥赛经典奥林匹克数学中的几何问题.pdf VIP
- 奥的斯电梯ACD4 原理图纸注释.pdf VIP
- 2025国家能源集团新疆哈密能源化工有限公司社会招聘(51人)笔试参考题库附答案解析.docx VIP
- 建设项目环境影响报告表.PDF VIP
- 呼吸科利用PDCA循环提高住院患者吸入剂使用正确率品管圈.pptx VIP
- 2024-2030年全球气动导弹弹射发射器(PMEL)行业现状、重点企业分析及项目可行性研究报告.docx
文档评论(0)