DS课程设计指导书

发布 2022-10-02 15:06:28 阅读 8233

数据结构课程设计。

一、目的 本课程设计是与“数据结构”课程配套的实习环节。通过本课程设计,使学生对数据的逻辑结构、物理结构、数据结构的选择和应用、算法设计和程序实现、算法效率等内容有一个较为全面和深入的认识;学会分析实际问题,选择、设计数据结构和算法;同时也培养学生分析设计、程序设计、上机操作等基本技能。

二、要求。课程设计报告要求按照如下几个内容认真完成;其中包括:

1、需求分析:在该部分中叙述,每个模块的功能要求;

2、概要设计:在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义;

3、详细设计:各个算法实现的源程序,对每个题目要有相应的源程序(可以是一组源程序,每个功能模块采用不同的函数实现)源程序要按照写程序的规则来编写。要结构清晰,重点函数的重点变量,重点功能部分要加上清晰的程序注释;

4、调试分析:测试数据,测试输出的结果和每个模块设计和调试时存在问题的思考(问题是哪些?问题如何解决?),算法的改进设想;

5、课设总结:总结可以包括:课程设计过程的收获、遇到问题、遇到问题解决问题过程的思考、程序调试能力的思考、对数据结构这门课程的思考、在课程设计过程中对《数据结构》课程的认识等内容;

最后提交实习报告。

三、内容。1、线性表的使用。

问题描述]利用单链表编写一个学生成绩系统,具体包括查询成绩、修改成绩、删除成绩、新增成绩、全班平均成绩等。

2、栈的共享。

问题描述]有时,一个程序设计中,需要使用多个同一类型的栈,这时候,可能会产生一个栈空间过小,容量发生溢出,而另一个栈空间过大,造成大量存储单元浪费的现象。作为一种策略,就是多栈共享一个栈空间。编写共享栈的入栈、出栈操作。

实现提示]对两栈共享情况来说,将两个栈底分别设在两端,两个栈顶指针top1和top2相对中间位置动态移动,两个栈之间的分界线是不定的。

3、队列的使用。

问题描述]利用数组构建一个环状队列,建立时需要考虑队满和队空的情况,利用这两个条件对队列进行数据的存取操作。

4、线性表的综合使用。

问题描述]设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车就进入停车场。

停车场内如有某辆车要开走,在它之后进入停车场的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费。如果停留在便道上的车未进停车场就要离去,允许其离去,不收停车费,并且仍然保持在便道上等待的车辆的次序。

编制一程序模拟该停车场的管理。

实现要求]要求程序输出每辆车到达后的停车位置(停车场或便道上),以及某辆车离开停车场时应缴纳的费用和它在停车场内停留的时间。

实现提示]汽车的模拟输入格式可以是:(到达/离去,汽车牌照号,到达/离去的时刻)。例如,(‘a’,1,5)表示1号牌照车在5这个时刻到达,而(‘d’,5,20)表示5号牌照车在20这个时刻离去。

整个程序可以在输入信息为(‘e’,0,0)时结束。本题可以用栈和队列来实现。

5、数组的遍历、表示。

问题描述]设计一个能将二维数组转换成以列优先为主的一维数组及以行优先为主的一维数组的程序。

6、树的遍历。

问题描述] 已知二叉排序树以二叉树链表作存储结构,编写按从大到小的顺序输出二叉排序树的各个结点的算法。

实现提示] 先建立一棵二叉排序树,以二叉链表表示。由于按中序遍历二叉排序树即按递增次序遍历,所以要按从大到小的顺序输出二叉排序树的各结点的值,可以对二叉排序树从树根结点中最右下的结点开始进行遍历,先遍历右子树,再访问根结点,最后遍历左子树,这样就可以得到一个按从大到小的顺序输出的序列。

7、图的搜索。

问题描述] 很多涉及图上操作的算法都是以图的遍历作为基础的。试写一个程序,演示在连通的无向图上访问全部结点的操作。

实现要求] 以邻接矩阵为存储结构的图进行dfs和bfs,以邻接表为存储结构的图进行dfs或bfs。以用户指定的结点为起点,分别输出每种遍历下的结点访问序列。

8、排序。问题描述]给出n 个学生的考试成绩表,每条信息由姓名与分数组成,试设计一个算法(1)按分数高低次序打印出每个学生在考试中获得的名次,分数相同的为同一名次;(2)按名次列出每个学生的姓名和分数。

实现要求]学生的考试成绩表必须通过键盘输入数据而建立,同时要对输出进行格式控制。分别用冒泡排序、快速排序和直接选择排序算法实现该问题。

9、查找。问题描述]建立一棵二叉排序树,再在这棵树中查找某一指定结点,最后显示查找结果。

实现提示]先将欲查找的数值与二叉树的根结点比较,如果比根结点小,再与左子树的根结点比较,否则与右子树的根结点比较,如此,直到找到数据或到达了叶结点为止。

四、实施方法

上述9题中任选5题,独立完成设计和调试,并撰写实习报告。

五、课程设计时间

课程设计时间为2周(2024年6月18日 ~ 7月3日)。

六、课程设计报告撰写要求。

课程设计报告撰写的基本要求是报告原则上不少于,其正文至少包括如下几个方面的内容:

0. 封面(参考本文起始页)

1. 目录(可自动生成,具体操作:先设置好正文中各级标题,然后在word菜单中选择“插入”--引用”--索引和目录”。)

2. 以下针对每个选择的实验描述。

2.1、需求分析;

2.2、概要设计;

2.3、详细设计;

2.4、调试分析;

3.本次课程设计总结。

4. 参考文献。

注意格式,见下面的例子,其中1为期刊文献,2为图书)

1] 刘伯来,宋作本,徐忠瑞。激光模拟射击训练器械及其射击精度的检定方法[j].山东体育科技,2002.24(4):17-19.

2] 高稚允,高岳。光电检测技术[m].北京:国防工业出版社,1995:172-212.

七、课程设计的考查

1. 考核内容以报告为主。

2. 学生须提交书面形式报告和电子文档,由班级学习委员统一收集。

3. 评分标准:由指导教师根据学生完成课程设计任务的情况综合打分:课程设计报告的质量80%、课程设计过程中的考勤和工作态度20%。

4. 成绩评定:优秀、良好、中等、及格和不及格五个等级。

课程设计指导书

2014年春季学期。沈阳城市建设学院。课程设计名称单向板肋梁楼盖设计 适用年级 专业 安全12级。指导教师 张晚来 田悦。2014 年 6 月 1 日。一 基本思路 此课程设计必须是在已学 土木工程结构 有关章节的基础下进行的,所以在设计前要通读教材中 受弯构件承载力计算 和 钢筋混凝土梁板结构设计...

课程设计指导书

暖通空调 空调部分。集美大学机械工程学院。制冷空调教研室。2007年12月。暖通空调 空调部分课程设计指导书。一 题目。北京市某综合大楼空调系统设计。二 建筑资料。1.该大楼各层建筑平面图。2.建筑参数 该建筑共分为三部分 地下室为空调机房和车库。一至二层为商场,层高5米。梁高0.6米。三至六层为客...

课程设计指导书

材料成型工艺课程设计指导书。本课程设计包括以下内容 一 编制焊接工艺规程 二 编制焊接工艺卡片 三 编制装配工艺过程卡片 四 设计焊接工装夹具。一 编制焊接工艺规程 按行业标准 1 范围。2 规范性引用文件。3 焊接工艺规程内容。3.1 材料。3.1.1 母材。3.1.2 焊接材料。3.2 主要设备...