《数据结构与算法》课程设计教学大纲_第1页
《数据结构与算法》课程设计教学大纲_第2页
《数据结构与算法》课程设计教学大纲_第3页
《数据结构与算法》课程设计教学大纲_第4页
《数据结构与算法》课程设计教学大纲_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、数据结构与算法课程设计教学大纲学分:1周数:3性质:必修形式:分散建议执行学期:4一、课程设计教学的意义和目的(一)意义:课程设计是培养和锻炼学生综合运用所学知识解决实际问题的能力,是实践性教学的重要环 节,它具有动手,动脑,理论联系实际的特点,是培养在校大学生理论联系实际,敢于动手,善 于动脑,独立自主解决各种问题的一种较好的方法。数据结构与算法是一门应用性、实践性较强的课程,忽视了实践性教学的环节,学生就会对该门课程的掌握不扎实。(二)本教学环节的实施目的:通过课程设计,使学生学会系统地运用所学的数据结构与算法等课程的知识和技能解决 实际问题的本领。通过设计实验,培养学生查阅专业资料,工具

2、书或参考书,掌握现代设计手段 和软件工具,并掌握以图纸和说明书的方式表达设计思想和计算结果的能力。通过数学建模与软 件开发,不但要培养和提高学生解决具体问题,而且应建立正确的设计和科研思想,牢固树立事 实求实和严肃认真的科学工作态度。二、课程设计教学的基本要求学生必须仔细阅读数据结构与算法课程设计方案,认真主动完成课程设计的要求。有问 题及时主动通过各种方式与教师联系沟通。学生要发挥自主学习的能力,充分利用时间,安排好 课程设计的时间计划,并在课程设计过程中不断检测自己的计划完成情况,及时的向教师汇报。课程设计按照教学要求需要三周时间完成,三周中每天(按每周5天)至少要上3-4小时的机来调试C

3、语言设计的程序,总共至少要上机调试程序45小时。为保证质量,需要每个学生将每天的上机调试程序的时间记录下来作为核定成绩的参考。数据结构是一门涉及多门课程的课程,难度较大,需要较好的C语言的程序设计和调试能力,如果学生能够按照要求,从时间和精力上保证完全的投入,相信能够有很大的收获。三、课程设计的内容及安排(一)主要内容:本次课程设计完成如下模块(共12个模块,学生可以在其中至少挑选4个功能块完成,但有*号的模块是必须要选择的,多做可以加分)1、运动会分数统计*任务:参加运动会有 n个学校,学校编号为 1 n。比赛分成m个男子项目,和 w个女子项目。项目编号为男子1 m,女子m+1 m+w不同的

4、项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前三名由学生自己设定。(m=20,*=20)功能要求:1).可以输入各个项目的前三名或前五名的成绩;2)能统计各学校总分;3)可以按学校编号、学校总分、男女团体总分排序输出;4).可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。规定:输入数据形式和范围:20以内的整数(如果做得更好可以输入学校的名称,运动项目的名称)输出形式:有中文提示,各学校分数为整型界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。存储结构:学生自己

5、根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。(数据文件的数据读写方法等相关内容在c语言程序设计的书上, 请自学解决)请在最后的上交资料中指明你用到的存储结构;测试数据:要求使用 1、全部合法数据;2、整体非法数据;3、局部非法数据。进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料中写明;2、一元多项式计算*任务:能够按照指数降序排列建立并输出多项式;能够完成两个多项式的相加、相减,并将结果输入;在上交资料中请写明:存储结构、多项式相加的基本过程的算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;3、订票系

6、统任务:通过此系统可以实现如下功能:录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。修改航班信息:当航班信息改变可以修改航班数据文件要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;4、

7、迷宫求解任务:可以输入一个任意大小的迷宫数据,用非递归的方法求出一条走出迷宫的路径,并将路径输出;要求:在上交资料中请写明:存储结构、基本算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;5、文章编辑*功能:输入一页文字,程序可以统计出文字、数字、空格的个数。静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。存储结构使用线性表,分别用几个子函数实现相应的功能;输入数据的形式和范围:可以输入大写

8、、小写的英文字母、任何数字及标点符号。输出形式:(1)分行输出用户输入的各行字符;(2)分4行输出全部字母数、”数字个数”、”空格个数”、”文章总字数(3)输出删除某一字符串后的文章;6、joseph 环任务:编号是1, 2,n的n个人按照顺时针方向围坐一圈,每个人只有一个密码(正整数)。一开始任选一个正整数作为报数上限值m,从第一个人开始顺时针方向自1开始顺序报数,报到 m时停止报数。报 m的人出列,将他的密码作为新的m值,从他在顺时针方向的下一个人开始重新从1报数,如此下去,直到所有人全部出列为止。设计一个程序来求出出列顺序。要求:利用单向循环链表存储结构模拟此过程,按照出列的顺序输出各个

9、人的编号。测试数据:m的初值为20, n=7 ,7个人的密码依次为 3, 1, 7, 2, 4, 7, 4,首先m=6,则正确的 输出是什么?要求:输入数据:建立输入处理输入数据,输入m的初值,n,输入每个人的密码,建立单循环链表。输出形式:建立一个输出函数,将正确的输出序列7、猴子选大王任务:一堆猴子都有编号,编号是 1, 2, 3m ,这群猴子(m个)按照1-m的顺序围坐一圈,从第1开始数,每数到第 N个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只 猴子,则该猴子为大王。要求:输入数据:输入 m,n m,n为整数,*m输出形式:中文提示按照 m个猴子,数n个数的方法,输出为大

10、王的猴子是几号,建立一个函数来实现此功能8、 建立二叉树,后序、先序遍历(用递归或非递归的方法都可以)任务:要求能够输入树的各个结点,并能够输出用不同方法遍历的遍历序列;分别建立二叉树存储结构的输入函数、输出后序遍历序列的函数、输出先序遍历序列的函数;9、赫夫曼树的建立任务:建立建立最优二叉树函数要求:可以建立函数输入二叉树,并输出其赫夫曼树在上交资料中请写明:存储结构、基本算法(可以使用程序流程图)、输入输出、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;10、纸牌游戏任务:编号为1-52张牌,正面向上,从第 2张开始,以2为基数,是2的倍数的牌翻一次,直到 最后一张

11、牌;然后,从第 3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然 后从第4张开始,以4为基数,是4的倍数的牌翻一次,直到最后一张牌; 再依次5的倍数的牌翻一次,6的,7的,直到以52为基数的牌翻过,输出:这时正面向上的牌有哪些?11、图的建立及输出任务:建立图的存储结构(图的类型可以是有向图、无向图、有向网、无向网,学生可以任选两种类型),能够输入图的顶点和边的信息,并存储到相应存储结构中,而后输出图的邻接矩阵。12、各种排序任务:用程序实现插入法排序、起泡法算法排序;利用插入排序和冒泡法的算法,将用户随机输入的一列数按递增的顺序排好。输入的数据形式为任何一个正整数,大小不限。输

12、出的形式:数字大小逐个递增的数列?(二)、工作进度安排1、熟悉设计题目。查阅相关资料2天2、Turbo C编程软件工具的熟悉应用1天3、编写程序及软件方针调试3天4、编写设计说明书2天5、设计答辩及成绩评定1天四、学生应提交的设计成果上交的设计成果的内容必须由以下四个部分组成,缺一不可。1、上交源程序: 学生按照课程设计的具体要求所开发的所有源程序(应该放到一个文件夹中)2、 上交程序的说明文件:(保存在.txt中)在说明文档中应该写明上交程序所在的目录,上交程序 的主程序文件名,如果需要安装,要有程序的安装使用说明;3、 课程设计报告:(保存在 word文档中,文件名要求 按照姓名-学号-课

13、程设计报告”起名,如 文件名为”张三-001-课程设计报告.doc )按照课程设计的具体要求建立的功能模块,每个模块要 求按照如下几个内容认真完成;其中包括:1)需求分析:在该部分中叙述每个模块的功能要求2)概要设计在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义。3)详细设计各个算法实现的源程序,对每个题目要有相应的源程序(可以是一组源程序,每个功能模块采用不同的函数实现)源程序要按照写程序的规则来编写。要结构清晰,重点函数的重点变量, 重点功能部分要加上清晰的程序注释。4)调试分析测试数据,测试输出的结果,时

14、间复杂度分析,和每个模块设计和调试时存在问题的思考(问题是哪些?问题如何解决?),算法的改进设想。4、 课程设计总结:(保存在word文档中)总结可以包括:课程设计过程中的收获、遇到的问题、 遇到问题后解决问题的思考、程序调试能力的思考、对数据结构这门课程的思考、在课程设计过 程中对数据结构课程的认识等内容;五、课程设计考核方法及成绩评定设计成绩根据平时考勤,阶段性进度检查,质疑,设计说明书,最终设计答辩综合评定。学 生不得无故请假或缺勤,累计达到三分之一定位设计成绩不合格。数据结构课程设计的最后成绩有以下几个方面组成:程序运行情况(20分),程序的结构合理与否(10分),算法说明的清晰程度(

15、10分),上交磁盘中程序存放的规范程度(10分),课程设计总结情况(10分),课程设计过程中的课程设计进展情况( 相互雷同)(20分),以及加分因素(10分);共100分;10 分),独立完成情况(学生间不制定人:年月日审核人:年月日批准人:年月日这样看起来,反而是朝生暮死的蝴蝶为可羡了。它们在短短的一春里尽情地酣足地在花间飞舞,一旦春尽花残,便爽爽快快地殉着春光化去,好像它们一生只是为了酣舞与享乐而来的,倒要痛快些。像 人类呢,青春如流水一般的长逝之后,数十载风雨绵绵的灰色生活又将怎样度过?是违法问题热也让同样5我也投入与他人啊读后感12420453158211462445200115642

16、0153地方 发的供货商啥好烦的人个人太炎热和谁 让他就如同00000000000 00000000000000000000000 00000000 00000000000000 0000000000000000 000000000000000 0000000000000000 00 00 0 00000000000 00生活虽辛苦,但我们一定要笑着过,以积极乐观的心态让日子过得有滋有味,这样才不白来人世走一遭,才会无怨无悔。因为生活没有真正的完美,只有不完美才是最真实的美。不要总是悲观地认为自己很不幸,其实比我们更不幸的人还有很多;要学会适应,学会调整自己的心态,学会宽容和理解,许多的苦、许多的累,都要坦然面对。只有经历了,体验过了,才能明白了生活的不易。因为经历就是收获要知道世上没有什么不能割舍,人生没有过不去的坡,当你调整好了心态,一切都会风清云谈。人活着,活的就是一种心情。谁都有不如意的时候,这就要求我们做任何事情上都要持有一颗平常心。只要做到不攀比,不虚荣,待人诚恳、做事踏实,以知足乐观的心态释怀所有,做事尽量站在别人的角度去考虑别人的感受,常怀感恩的心态待人,哪怕平庸,也会赢得世人对你的认可和尊重!只要心中有景,何处都是彩云间;只要有一份

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论