2012春数据结构课程设计内容及时间安排

合集下载

2012版《数据结构A》课程实验指导书

2012版《数据结构A》课程实验指导书

2012版《数据结构A》课程实验指导书《数据结构A》课程实验指导书Data Structure Course Design课程编号:06311360 学时:15 学分:1先修课程:程序设计基础、⾯向对象程序设计适⽤专业:计算机科学与技术、⽹络⼯程、软件⼯程⼀、实验⽬的《数据结构A》课程是计算机科学与技术及其相关专业的⼀门重要的专业基础课。

在课堂教学中,⽐较全⾯、概括性地讲述数据结构学科中⼀些基础性知识、重要概念及各种算法,通过该实验教学和学⽣的上机实践,将这些基础性知识、重要概念及各种算法,在计算机上编程实现,使学⽣能够达到以下实验教学⽬标:1.掌握计算机处理数据的基本⽅法;2.了解算法的时间及空间分析⽅法;3.能够为实际应⽤所涉及的数据选择适当的逻辑结构、存储结构及相应的算法;4.通过在计算机上编程实现课程中介绍的各种算法,在程序设计能⼒⽅⾯得到提升。

⼆、上机实验总体要求1.每位同学准备⼀个实验本,上机前作好充分的准备⼯作,预习本次实验的内容,事先熟悉与实验有关的软硬件环境,编写好程序代码,供上机时使⽤。

2.实验时遵守实验室的规章制度,爱护实验设备,原则上每⼈固定实验设备,对于实验设备出现的问题,要及时向指导⽼师汇报。

3.编程序过程中要注意多存盘,避免由于死机等原因造成的不必要的重复录⼊。

4.内部⽂档要求:每个源⽂件和头⽂件都必须在⽂件⾸部的注释中注明设计者姓名,项⽬名(即我们的上机题⽬名),创建⽇期和最近⼀次修改⽇期。

包含main()函数的源⽂件必须在⾸部注释后另加⼀段注释,简要描述⼀下程序的⽬的和⽤到的主要数据结构。

⽂件注释格式如下:⽂件名称:项⽬名称:创建者:创建时间:最后修改时间:功能:⽂件中的函数名称和简单功能描述:⽂件中定义的全局变量和简单功能描述:⽂件中⽤到的他处定义的全局变量及其出处:与其他⽂件的依赖关系:◆每个类必须包含⾸部注释块,适度地描述这个类的⽬的。

类的⾸部注释应该紧挨着放在类的声明(⼀般在头⽂件⾥)前⾯。

数据结构的课程设计

数据结构的课程设计

数据结构的课程设计一、课程目标知识目标:1. 理解数据结构的基本概念,掌握线性表、树、图等常见数据结构的特点与应用场景。

2. 学会分析不同数据结构的存储方式和操作方法,并能运用到实际问题的解决中。

3. 掌握排序和查找算法的基本原理,了解其时间复杂度和空间复杂度。

技能目标:1. 能够运用所学数据结构知识,解决实际问题,提高编程能力。

2. 能够运用排序和查找算法,优化程序性能,提高解决问题的效率。

3. 能够运用数据结构知识,分析并解决复杂问题,培养逻辑思维能力和创新意识。

情感态度价值观目标:1. 培养学生对数据结构学科的兴趣,激发学习热情,形成主动探索和积极进取的学习态度。

2. 增强学生的团队协作意识,培养合作解决问题的能力,提高沟通表达能力。

3. 培养学生的抽象思维能力,使其认识到数据结构在计算机科学中的重要性,激发对计算机科学的热爱。

本课程针对高中年级学生,结合学科特点和教学要求,注重理论与实践相结合,培养学生的编程能力和逻辑思维能力。

通过本课程的学习,使学生能够掌握数据结构的基本知识,提高解决实际问题的能力,同时培养良好的学习态度和价值观。

在教学过程中,将目标分解为具体的学习成果,以便进行后续的教学设计和评估。

二、教学内容1. 数据结构基本概念:介绍数据结构的概念、作用和分类,重点讲解线性结构(线性表、栈、队列)和非线性结构(树、图)的特点。

2. 线性表:讲解线性表的顺序存储和链式存储结构,以及相关操作(插入、删除、查找等)。

3. 栈和队列:介绍栈和队列的应用场景、存储结构及相关操作。

4. 树和二叉树:讲解树的定义、性质、存储结构,二叉树的遍历算法及线索二叉树。

5. 图:介绍图的定义、存储结构(邻接矩阵和邻接表)、图的遍历算法(深度优先搜索和广度优先搜索)。

6. 排序算法:讲解常见排序算法(冒泡排序、选择排序、插入排序、快速排序等)的原理、实现及性能分析。

7. 查找算法:介绍线性查找、二分查找等查找算法的原理及实现。

《数据结构》课程整体教学设计

《数据结构》课程整体教学设计

《数据结构》课程整体教学设计数据结构课程整体教学设计一、引言数据结构是计算机科学中的一门重要课程,它是计算机程序设计的基础。

本文旨在设计一套整体教学方案,以帮助学生全面理解数据结构的概念、原理和应用,并培养学生的问题分析和解决能力。

二、教学目标1. 理解数据结构的基本概念,如数组、链表、栈、队列、树、图等。

2. 掌握各种数据结构的实现方式,包括顺序存储和链式存储。

3. 熟悉数据结构的基本操作,如插入、删除、查找、排序等。

4. 理解算法与数据结构之间的关系,能够灵活地选择适合的数据结构解决实际问题。

5. 培养学生的团队协作和沟通能力,通过小组项目实践提升实际应用能力。

三、教学内容及安排1. 基础知识教学(2周)a) 介绍数据结构的定义、分类和基本概念。

b) 详细讲解数组、链表、栈和队列的基本原理和实现方法。

c) 引导学生通过编程实践掌握基础数据结构的使用。

2. 高级数据结构教学(3周)a) 介绍树、图等高级数据结构的定义和应用场景。

b) 分析树、图的特点和基本操作,包括遍历、搜索和最短路径等算法。

c) 引导学生通过实例理解和实现高级数据结构及其相关算法。

3. 算法与数据结构的关系(1周)a) 介绍算法的基础概念,如时间复杂度和空间复杂度。

b) 分析常用算法与数据结构之间的关系,如排序算法与数组、查找算法与树等。

c) 培养学生运用不同数据结构解决实际问题的能力。

4. 小组项目实践(4周)a) 学生自行组成小组,选定一个实际问题进行分析和解决方案设计。

b) 引导学生选择合适的数据结构和算法,实现项目需求。

c) 指导学生撰写项目报告,总结项目经验和收获。

四、教学方法与策略1. 合理运用多媒体技术,辅助教学内容的讲解和演示。

2. 结合示例和实践,引导学生进行课堂互动和编程实践。

3. 组织小组合作学习,促进学生的团队协作和沟通能力。

4. 鼓励学生积极参与讨论和提问,激发学习兴趣和思考能力。

5. 提供适当的学习资源和参考资料,帮助学生进行自主学习。

《数据结构课程设计》课程设计方案

《数据结构课程设计》课程设计方案

《算法与数据结构课程设计》方案Course Design of Data Structure适用专业:计算机科学与技术专业本科课程代码:B08233004一、课程设计的性质和目的软件设计能力培养对学生是很重要。

通过数据结构的学习,使学生对软件编程能力有一定的提高。

数据结构学习是锻炼学生在进一步掌握模块化、结构化程序设计的方法的同时,培养学生运用已学知识分析问题、解决问题及编写实用程序的能力,通过对线性化、层次化、网络化数据结构的了解进一步掌握自然数据的结构方式及组织方式,让学生深入体会存储在计算机中的数据及程序,如何运用数据实现编程。

课程设计是《数据结构》课程教学必不可缺的一个重要环节,它可加深学生对该课程所学内容的进一步的理解与巩固,是将计算机课程与实际问题相联接的关键步骤。

通过课程设计,能够提高学生分析问题、解决问题,从而运用所学知识解决实际问题的能力,因而必须给予足够的重视。

主要目的如下:1、培养学生运用算法与数据结构的基本知识解决实际编程中的数据结构设计和算法设计问题。

2、培养学生独立设计程序与解决问题的能力,培养学生团队协作集成程序模块及调试能力。

3、培养学生初步的软件设计及软件测试的能力。

二、课程设计的基本要求学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课设过程中不断检测自己的计划完成情况。

1、设计和调试过程要规范化。

(1)需求分析将题目中要求的功能进行叙述分析,并且设计解决此问题的数据存储结构,(有些题目已经指定了数据存储的,按照指定的设计),设计或叙述解决此问题的算法,描述算法建议使用流程图,进行算法分析指明关键语句的时间复杂度。

给出实现功能的一组或多组测试数据,程序调试后,将按照此测试数据进行测试的结果列出来。

对有些题目提出算法改进方案,比较不同算法的优缺点。

如果程序不能正常运行,写出实现此算法中遇到的问题,和改进方法。

(2)源程序(可以是一组源程序,即详细设计部分)源程序要按照写程序的规则来编写。

2012年春季数据结构课程设计

2012年春季数据结构课程设计

课程设计要求[选好题目]:每人必须从下面5题中任意选一题作为设计,独立思考,认真完成,课程设计中各任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝。

[课程设计报告]:(保存在word 文档中,文件名要求按照"班级_姓名_学号_课程设计报告"起名,如文件名为"10信科1_张三_001_课程设计报告".doc )按照课程设计的具体要求建立的功能模块,每个模块要求按照如下几个内容认真完成;(1)需求分析:在该部分中叙述每个模块的功能要求(2)概要设计在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义。

(3)详细设计各个算法实现的源程序,对每个题目要有相应的源程序(可以是一组源程序,每个功能模块采用不同的函数实现)源程序要按照写程序的规则来编写。

要结构清晰,重点函数的重点变量,重点功能部分要加上清晰的程序注释。

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

[课设总结]:(保存在word 文档中)总结可以包括: 课程设计过程的收获、遇到问题、遇到问题解决问题过程的思考、程序调试能力的思考、对数据结构这门课程的思考、在课程设计过程中对《数据结构》课程的认识等内容;[课设提交]:提交内容:课程设计报告(具体格式见题目后附录),课程总结和附程序源代码总共一份,统一采用A4纸双面打印输出。

并由各班学委将电子版收齐后,统一提交。

实现的结果以自愿的原则参与演示,参与者可加5分,具体时间待定。

提交时间:第18周星期5,迟交无成绩。

注意事项:1:请同学们注意课程设计提交时间。

2:请按照附件提供的格式组织课程设计,并附上自评分。

【课程设计题目】:1、.利用随机函数产生两列(每列个数均为150且每个数均不小于10) 的随机整数,对这两列整数写一个程序实现如下功能操作:(1)两列整数在顺序存储方式中,a)找出这两列数中的素数b) 把两列数中相同的数转化为二进制数输出。

数据结构课程设计要求

数据结构课程设计要求

数据结构课程设计要求第一篇:数据结构课程设计要求《数据结构》课程设计要求一、课程设计的目的及要求1.课程设计目的课程设计是《数据结构》课程教学必不可缺的一个重要环节,它可加深学生对该课程所学内容的进一步的理解与巩固,是将计算机课程与实际问题相联接的关键步骤。

通过课程设计,能够提高学生分析问题、解决问题,从而运用所学知识解决实际问题的能力,因而必须给予足够的重视。

2.课程设计要求1)明确课设任务,复习与查阅有关资料2)按要求完成课设内容,课设报告要求文字和图工整、思路清楚、正确。

3)每人完成一个项目。

4)应用程序应具有一定的可用性:5)凡等候用户输入时,给出足够的提示信息,如“Please Select (1—3):”提示用户选择。

6)格式明显易懂,配上适当的颜色、声音等辅助效果,能方便地改正输入时的错误,使用户感到方便、好用。

7)有联机求助功能。

用户能直接从系统得到必要的提示,不查手册也能解决一些疑难。

8)程序具有一定的健壮性,不会因为用户的输入错误引起程序运行错误而中断执行:9)对输入值的类型、大小范围、字符串的长度等,进行正确性检查,对不合法的输入值给出出错信息,指出错误类型,等待重新输入。

10)当可能的回答有多种时,应允许输入任何一种回答。

11)对删除数据应给出警告。

二、课程设计任务、内容及时间安排1.课程设计任务、内容课程设计的题目可由教师指定,如可在下列选题中选择,或由教师另外选择,也可由学生自行选择。

但选题内容、难度要适当,要有一定的实际意义,并能达到进一步巩固和强化本课程所学知识的效果。

选题1.停车场管理问题。

问题描述:设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。

车辆按到达停车场时间的早晚依次从停车场最里面向大门口处停放(最先到达的第一辆车放在停车场的最里面)。

如果停车场已放满n辆车,则后来的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排以便道上的第一辆车就进入停车场。

数据结构与算法课程设计计划书-2011-2012-2(10级).

数据结构与算法课程设计计划书-2011-2012-2(10级).

计算机科学与工程学院集中性实践教学计划书( 2011-2012 学年第二学期课程名称:数据结构与算法课程设计专业:计算机科学与技术软件工程、网络工程班级:计算机科学与技术101-6软件工程101-4网络工程101-4课程负责人:李锡祚、王玲芬、李威指导教师分配情况:专业指导教师计算机科学与技术李威、李笑牛、张恒博、云健、刘爽、包书哲软件工程王玲芬、王鹏杰、王存睿、孙世昶、网络工程李锡祚、姜楠、王晓强、王波教学起止周:第1 至3 教学周一、教学目的与要求:数据结构与算法课程设计的目的是使同学们能够根据数据对象的特性,合理的组织数据并能综合运用数据结构与算法基本知识和程序设计基本知识解决实际问题,培养基本的、良好的程序设计技能。

二、主要阶段、内容、时间及地点安排(以天为单位计:阶段与内容第1阶段:指导教师布置设计任务并解析有关题目的设计指标和任务的具体内容,学生选择题目,明确问题描述和要求,查阅资料。

(1天;各班长或学习委员将本班的选题表交给辅导教师,一人一题,每道题的选择人数原则上不能超过3人,第一天课程设计结束后,每名学生都要确定题目。

第2阶段:明确题目要求、确定数据结构、设计算法,编写程序、调试程序、测试程序(11天;第一周,学生应明确题目要求、确定数据的逻辑结构和存储结构、实现基本操作的编码与调试、实现主菜单。

第二周,完成核心算法的设计、编码与调试。

第三周,完成剩余任务的编码与调试,准备足够的测试数据,对软件进行测试与调试。

第3阶段:完成设计任务,准备验收、答辩(1天;第4阶段:答辩(上机演示,回答教师提问(1天;第5阶段:撰写课程设计报告(2天。

地点与时间地点:金石滩校区图书馆时间:计算机科学与技术:课程设计上机时间表周一周二周三周四周五第一周上午、下午上午第2大节、下午第二周上午、下午上午第2大节、下午第三周上午、下午上午第2大节、下午(验收软件工程:课程设计上机时间表周一周二周三周四周五第一周上午、下午上午、下午下午第二周上午、下午上午、下午下午第三周上午、下午上午、下午下午(验收网络工程:课程设计上机时间表周一周二周三周四周五第一周上午、下午上午下午上午第二周上午、下午上午下午上午第三周上午、下午上午下午上午(验收注:上午8:30~11:10下午1:40~4:20三、课程设计题目及具体要求:1.成绩管理问题描述:给出n个学生的考试成绩表,成绩表包括学生的学号、姓名、考试成绩(高等数学、英语、物理,设计一个简单的成绩管理程序。

数据结构课程设计指导书(2012)

数据结构课程设计指导书(2012)

《数据结构》课程设计指导书一、课程设计目的《数据结构》是一门实践性较强的软件基础课程,为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。

课程设计是加强学生实践能力的一个强有力手段。

本课程设计的目的就是要达到理论与实际应用相结合,使学生深化理解书本知识,获取上机实践经验,使学生能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养软件工作者所需的动手能力、独立解决问题的能力。

该课程设计侧重软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧,以至一整套软件工作规范的训练和科学作风的培养。

通过该课程设计的操作与实践,使学生真正掌握数据结构相关算法的实现及应用方法,在一定程度上提高使用数据结构相关算法的综合设计能力,具体掌握的基本能力如下:1.了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3.提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。

二、课程设计要求学生必须仔细阅读《数据结构》课程设计方案,认真主动完成课程设计的要求。

通过设计一个完整的程序,使学生掌握数据结构的应用,算法的编写。

要求如下:1.做好上机准备:要充分认识课程设计对自己的重要性,认真做好设计前的各项准备工作。

每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。

2.既要虚心接受老师的指导,又要充分发挥主观能动性。

结合课题,独立思考,努力钻研,勤于实践,勇于创新。

充分利用时间,安排好课程设计的时间计划,并在课程设计过程中不断检测自己的计划完成情况,及时向教师汇报。

3.独立思考,独立完成:课程设计中各项任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝。

数据结构课程设计要求

数据结构课程设计要求

课程设计要求
1.应用自己熟悉的语言Java,C/C++等语言编写程序,可读性要好;2.上机前充分准备,复习有关算法,写出计算步骤,反复检查,调试程序;
3.完成任务后写出课程设计报告;
4.课程设计的时间要求:上午:8:30—10:00;10:30--11:45;
下午:13:30--15:00;15:30--16:45;
5.上课期间请不要做与学习无关的事情,如:qq聊天,游戏,浏览无关网络,观看影视节目等等,若发现,经教育不改者,1
次直接扣10分!
6.总评成绩包括课程设计报告成绩(50分)和平时成绩(50分,包括出勤10分,上机表现40分);
7.独立完成,如有雷同,一律判零分!注意被雷同!
8.课程设计符合规范,如格式不对,直接判零分!
9.按时上交课程设计报告,如逾期按照规定扣分!
10.课程设计上交打印稿一份,从7月8日考试上交,最晚上交时间:7月10日,13:30-17:00,地点:机电楼B227。

如果没人,可将课程设计报告上交至机C308.
1。

数据结构课程设计航班信息查询与检索

数据结构课程设计航班信息查询与检索

学院名称《数据结构》课程设计报告题目——航班信息查询与检索班级:姓名:时间:2012/12/29---2013/1/5二○一二年十二月二十九日课程设计任务书与成绩评定课题名称航班信息查询与检索Ⅰ、题目的目的和要求:1、设计目的巩固和加深对数据结构的理解,通过上机实验、调试程序,加深对课本知识的理解,最终使学生能够熟练应用数据结构的知识写程序。

(1)通过本课程的学习,能熟练掌握几种基本数据结构的基本操作。

(2)能针对给定题目,选择相应的数据结构,分析并设计算法,进而给出问题的正确求解过程并编写代码实现。

2、设计题目要求:问题描述:该设计要求对飞机航班信息进行排序和查找。

可按航班的航班号、起点站、到达站、起飞时间以与到达时间等信息进行查询。

任务要求:对于本设计,可采用基数排序法对一组具有结构特点的飞机航班号进行排序,利用二分查找法对排好序的航班记录按航班号实现快速查找,按其他次关键字的查找可采用最简单的顺序查找方法进行,因此他们用得较少。

每个航班记录包括八项,分别是:航班号、起点站、终点站、班期、起飞时间、到达时间、飞机型号以与票价等,假设航班信息表(8条记录)位为航班号,这种航班号关键字可分成两段,即字母和数字。

其余七项输入内容因为不涉与本设计的核心,因此除了票价为数值型外,均定义为字符串即可。

Ⅱ、设计进度与完成情况Ⅲ、主要参考文献与资料[1] 严蔚敏数据结构(C语言版)清华大学出版社1999[2] 严蔚敏数据结构题集(C语言版)清华大学出版社1999[3] 谭浩强C语言程序设计清华大学出版社[4] 与所用编程环境相配套的C语言或C++相关的资料Ⅳ、成绩评定:设计成绩:(教师填写)指导老师:(签字)二○一三年一月五日目录一、概述 (6)二、系统分析 (6)三、概要设计 (6)四、详细设计 (7)1.定义数据类型 (7)2.算法实现 (8)五、测试数据 (10)六、收获与体会 (13)七、参考文献 (13)八、附录 (14)5 / 24一、概述课程设计是实践性教学中的一个重要环节,它以某一课程为基础,可以涉与和课程相关的各个方面,是一门独立于课程之外的特殊课程。

数据结构课程设计安排

数据结构课程设计安排

数据结构课程设计安排一、课程目标知识目标:1. 理解数据结构的基本概念,掌握线性表、树、图等常见数据结构的特点及应用场景。

2. 学会分析不同数据结构在解决实际问题中的优劣,并能够选择合适的数据结构进行问题求解。

3. 掌握常见排序算法和查找算法,了解其时间复杂度和空间复杂度。

技能目标:1. 培养学生运用数据结构解决实际问题的能力,提高编程实践能力。

2. 培养学生通过分析问题,设计并实现相应数据结构及其算法的能力。

情感态度价值观目标:1. 激发学生对数据结构和算法的兴趣,培养主动探究和自主学习的精神。

2. 培养学生面对复杂数据结构问题时,保持积极的态度,勇于克服困难,善于合作与交流。

3. 增强学生的创新意识,培养将数据结构知识应用于实际生活中的能力。

课程性质:本课程为计算机科学与技术及相关专业的一门专业基础课,旨在帮助学生建立扎实的数据结构基础,提高编程能力和解决问题的能力。

学生特点:学生已具备一定的编程基础,对数据结构有初步了解,但缺乏深入理解和实践。

教学要求:结合学生特点,注重理论与实践相结合,通过案例分析和课堂实践,使学生掌握数据结构的基本知识,提高解决实际问题的能力。

将课程目标分解为具体的学习成果,以便于教学设计和评估。

二、教学内容1. 线性表:介绍线性表的定义、特点和基本操作,包括顺序存储和链式存储结构,以及线性表的应用案例。

2. 栈和队列:讲解栈和队列的基本概念、存储结构和操作方法,分析其应用场景,如表达式求值、递归算法等。

3. 串:探讨串的定义、存储结构以及模式匹配算法,如BF算法、KMP算法等。

4. 树:研究树的基本概念、二叉树、线索二叉树、二叉排序树、平衡二叉树、哈夫曼树及其应用。

5. 图:介绍图的定义、存储结构、遍历算法(深度优先和广度优先搜索)、最短路径算法(如Dijkstra和Floyd算法)、最小生成树算法(如Prim和Kruskal算法)等。

6. 排序算法:讲解常见排序算法(如冒泡排序、选择排序、插入排序、快速排序、归并排序、堆排序等)及其时间复杂度和空间复杂度。

2012级数据结构实训指导书(2013年12月)

2012级数据结构实训指导书(2013年12月)

《数据结构课程设计》指导书说明:本指导书适用于2012级1-4班一、课程设计的目的、要求和任务本课程设计是为了配合《数据结构》课程的开设,通过设计完整的程序,使学生掌握数据结构的应用、算法的编写、类C语言的算法转换成程序并用上机调试的基本方法。

1.课程的目的(1)使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。

(2)使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。

(3)使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力;2.课程的基本要求与任务(1)巩固和加深对数据结构基本知识的理解,提高综合运用课程知识的能力。

(2)培养学生自学参考书籍,查阅手册、图表和文献资料的能力。

(3)通过实际课程设计,初步掌握简单软件的分析方法和设计方法。

(4)了解与课程有关的工程技术规范,能正确解释和分析实验结果。

(5)题目具有足够的工作量。

二、课程设计的一般步骤:1.选题与搜集资料:每人选择一题(每题有几个同学选),进行课程设计课题的资料搜集。

2.分析与概要设计:根据搜集的资料,进行程序功能与数据结构分析,并选择合适的数据结构、并在此基础上进行实现程序功能的算法设计。

3.程序设计:运用掌握C/C++语言编写程序,分工实现各个模块功能。

4.调试与测试:调试程序,并记录测试情况。

5.完成课程设计报告。

6.验收与评分:指导教师对每个同学的开发的系统进行综合验收,并由学院考核小组进行随机抽查评分。

三、课程设计成果的规范(详见文档模板)课程设计成果应包括如下3个部分:1.一个小组一份《设计文档》,其中包括:a) 系统功能模块图(有流程图附上)b) 系统定义的数据结构;c) 系统设计的主要功能函数及功能简介d) 项目组成员的分工情况2. 每个同学一份《实训报告》,其中包括:a) 问题描述b) 基本要求c) 系统分析与设计d) 测试数据及结果e) 总结3. 附录:源程序清单四、成绩评定标准学生成绩由以下几个方面进行评定:1.学生编写的实际软件和运行结果,占总成绩50%;2.设计报告,占总成绩30%3.答辩,占总成绩10%4.出勤,占总成绩10%五、实习过程项目实训过程分为以下六个阶段,各阶段如下:1、功能分析(0.25天)2、模块划分及总体设计(0.75天)3、数据结构定义、详细设计(0.5天)4、编码(2.5天)5、测试修订(1天)6、答辩(1天)合计6天。

数据结构课程设计报告

数据结构课程设计报告

数据结构设计报告题目:简单编译器的实现学院信息科学与工程学院学生姓名尹婷班级学号0909101820指导教师林立新日期2012.7.03一、问题描述编写一个简单的文章编辑程序,具体功能如下:1.用户可按行输入字符串到程序,每行不超过80字2.分别统计出其中每行的英文字母数,数字数,空格数,以及整篇文章的总字数3.统计某一字符串在文章中出现的次数并输出该次数4.可删除某一字串,删除后程序自动将后面的字符前移程序要求:1.存储结构使用线性表2.分别使用几个子函数实现相应功能二、基本要求模块功能需求(1)输入模块:用户可在文本输入框中输入任意字符,最多输入80个字符,输入后保存在程序变量中.(2)编辑模块:用户可点击删除按钮,删除某一行或行中的任何字串.(3)统计模块:程序会根据用户需求统计某一行的英文字母数、数字数、空格数,并自动显示整篇文章的总字数(4)显示输出模块:程序会将用户输入的文章及统计结果合理清晰的显示在窗口中三、数据结构的设计1、定义结构体struct line,文本行采用顺序存储,行与行之间采用链四软件模块结构图文章输入、浏览、统计串、统计及删除的详细流程如下图所示:五程序流程图int FindString(LINE * &head,char *str) /*统计str在文章中出现的次数*/ 求在一行中Str出现的次数的流程图:①.查找第一个字符,如果有第一个字符即p->data[i]==str[0],设计数器k=0②.查找这个字符后面的字符与要查找的字符串是否匹配即p->data[i+j]==str[j],如果匹配k++③.重复第二步,如果k=len2,则查找到,count++;如果没查找到,重新进行第一步void delstringword(char *s,char *str) /*删除字符串*s中的字符串*str*/实现思想:①.从字符串s 中寻找str 第一次出现的位置 *p=strstr(s,str);②.len=strlen(s);i=len-strlen(p)即前i 项恰好不含要删除的字符串,将前i 项复制到tmp 中 ③.j=i+strlen(str) 即要删除的字符串在i+1和j 之间,将j 之后的字符串复制到tmp 中④.将tmp 赋给串s ,返回s六 程序设计思想存储结构使用线性表,分别用几个子函数实现相应的功能;输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。

《数据结构》课程教学设计方案

《数据结构》课程教学设计方案

《数据结构》课程教学设计方案一、课程的性质和任务《数据结构》是计算机科学与技术专业本科生的一门必修课程。

本课程介绍如何组织各种数据在计算机中的存储、传递和转换。

内容包括:数组、链接表、栈和队列、递归、树与森林、图、堆与优先级队列、集合与搜索结构、排序、索引与散列结构等。

课程采用面向对象的观点讨论数据结构技术,并以兼有面向过程和面向对象双重特色的C++ 语言作为算法的描述工具,强化数据结构基本知识和面向对象程序设计基本能力的双基训练。

为后续计算机专业课程的学习打下坚实的基础。

二、先修课要求面向对象程序设计、计算机数学(离散数学)。

三、课程的教学基本要求1 、掌握重要数据结构的概念、使用方法及实现技术;2 、学会做简单的算法分析,包括算法的时间代价和空间代价。

四、教学方法和教学形式建议面授辅导为主、辅以网上答疑,小组讨论,专题论坛,学生自主观看教学光盘。

教师阶段性的进行作业评讲,总结复习、同时进行必要的上机实验。

五、考试期末考试由中央电大统一命题,统一评分标准,统一考试时间。

学生的本课程成绩按平时的形成性考核成绩满分20 分,期末考试满分80 分分配,合计计算。

六、文字教材及媒体本课程的文字教材包括《数据结构》主教材。

清华大学出版社出版的《数据结构》,殷人昆编著;《数据结构实用教程》作为参考书,徐孝凯编著。

录像媒体:录制30讲,每讲50分钟。

直播课堂:共4讲,每讲50分,前三讲为对教学重点、难点,对教学过程中反映的共性问题和有代表性的问题进行辅导,后一讲为复习辅导和有关考试说明。

七、教学环节有三个教学环节:授课,作业和教学实验,考试。

课程总成绩的记分方法:形成性考核成绩在课程总成绩中占20%,终结性考试成绩在课程总成绩中占80%。

课程总成绩为百分制,60分为合格。

作业及试验:形成性考核的要求和形式:形成性考核的形式有平时作业和课程实验。

能够按时、按质、按量完成平时作业和课程实验者方可得满分。

网上教学:安徽电大教学处主页开放教育专栏有关《数据结构》内容:教学大纲、实施方案、考核说明、课程说明、模拟试题、教学辅导、复习指导、往届试题、重点难点、直播课堂、各章电子教案等;每月更新充实一次。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

10级软件工程专业数据结构课程设计
一、题目
题目共三部分组成,每一部分均要求完成:
1.编写优先队列数据(priority_queue)类型(30分,个人题目)。

优先队列是0个或多个元素的集合,每个元素都有一个优先权
或值,对优先队列执行的操作有1) 查找;2) 插入一个新元素;3)
删除.在最小优先队列(min priority queue)中,查找操作用来搜索
优先权最小的元素,删除操作用来删除该元素;对于最大优先队
列(max priority queue),查找操作用来搜索优先权最大的元素,删
除操作用来删除该元素.优先权队列中的元素可以有相同的优
先权,查找与删除操作可根据任意优先权进行。

由于这是一个
queue,所以只允许在底端加入元素,并从顶端取出元素,除
此之外别无其它存取元素的途径。

priority_queue 带有权值观
念,其内的元素并非依照被推入的次序排列,而是自动依照元
素的权值排列(通常权值以实值表示)。

要求:实现优先队列的初始化,查找,插入,删除操作,并且
控制其查找,插入,删除操作的算法时间复杂度为O(logn)。

有关优先队列的介绍可以参考附件《优先队列》。

设计好后要求编写使用说明书,交给另一个小组成员进行测
试。

2.阅读STL(Standard Template Library)中有关常见的抽象数据
类型的实现源码并应用。

(30分,个人题目)
抽象数据类型(ADT)是指一个数学模型以及定义在该模型上的一组操作。

在STL中实现了堆栈(stack)、队列(queue)、堆(heap)、优先队列(priority-queue)等抽象数据类型,每种类型都具有常用的操作。

要求:选其中一种抽象数据类型阅读其实现原理(不局限于以上列出的数据类型),其后根据自己的理解书写阅读心得,并就自己选择的数据类型举一个应用例子实现。

所选择例子可以是北大OJ上的题目,也可以是自己想到的合适应用实例。

不管是何种情况,要有相应的源码实现。

有关STL的相应介绍可参考附件的《STL源码剖析》。

3.数据结构应用(40分,团队题目)
以团队协作分工的方式完成,具体题目参考附件:2012题目3列表,用图形用户界面完成的有额外加分。

可以自选类似的题目。

二、组织形式
以小组形式,每3人一组,同一班级自由组合,不跨班(如果人数不是3的倍数可以有1或2个4个人一组)。

每人完成每部分的一道题目,互不相同,即每人做3道题。

(说明,第一题每个人都要做,相互测试,第2题每个人最好选择不同题目来做,第3题为团队题目,在团队报告中标明分工情况)
三、评判形式
第一、二题小组内根据完成的工作量、难度、效果、小组内进行
自评,占50%,指导教师评阅占50%,(评分根据题目分值,如第一题总分30分,组内自评25,教师评价23,则得分24分)。

第三题在下学期第7周左右以小组为单位公开演示,现场集体评分。

四、时间安排
1.3月5日前完成分组,学习委员将分组情况Email给指导教师
(maymayxiao@)。

分组表如下:
班级:2010级XXXX班
(注意:只写学号末2位。


2. 开学后第5周的周五(3月23日)前提交第一、二题的个人设
计报告与小组自评(学习委员以小组为单位统一收集后提交)。

1)个人设计报告包括题目的数据类型及操作的定义,存储结构及算法说明,测试的截图,报告中不需要粘贴源代码。

二个题目对应二份个人设计报告,二个源代码文件,只需要提交电子版。

(每个人对应4个文件,不要上交EXE文件)。

2)根据实际执行情况填写团队报告,每个小组对应一个团队项目文件。

3. 开学后第8周左右安排团队题目演示与评分。

提交第三题的团队报告与完整的源代码(包括可执行程序)。

相关文档
最新文档