数据结构课程设计书
《数据结构》课程设计方案任务书
《数据结构》课程设计任务书计算机与通信学院2018-5湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院湖南工业大学计算机与通信学院湖南工业大学计算机与通信学院湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书。
《数据结构》课程设计计划书
《数据结构》课程设计计划书班级:2012信计专业授课教师:马阿曼一、课程设计目的《数据结构》课程是计算机科学与技术专业的核心专业基础课。
本课程设计的目的是将数据结构理论和实践结合起来,锻练学生编写程序过程中的数据结构使用和分析、解决实际问题的能力。
1、使学生进一步理解和掌握课堂上所学各种基本抽象数据类型的逻辑结构、存储结构和操作实现算法,以及它们在程序中的使用方法。
2、使学生掌握软件设计的基本内容和设计方法,并培养学生进行规范化软件设计的能力。
3、使学生掌握使用各种计算机资料和有关参考资料,提高学生进行程序设计的基本能力。
二、课程设计内容《数据结构》课程设计包含以下主要内容:1、查阅相关资料确定课题;2、课题所设计的数据结构设计、算法设计;3、编写代码并调试;4、完成课程设计报告;5、进行课设答辩。
三、设计地点及时间安排地点:瑞樟6-402时间:2014年6月3、4、5、6、7、8号四、课程设计报告的书写格式1、问题描述:描述要求编程解决的问题。
2、基本要求:给出程序要达到的具体的要求。
3、测试数据:设计测试数据,或具体给出测试数据。
要求测试数据能全面地测试所设计程序的功能。
4、算法思想:描述解决相应问题算法的设计思想。
5、模块划分:描述所设计程序的各个模块(即函数)功能。
6、数据结构:给出所使用的基本抽象数据类型,所定义的具体问题的数据类型,以及新定义的抽象数据类型。
7、算法设计分析:给出算法的设计分析和算法流程图。
8、源程序:给出所有源程序清单,要求程序有充分的注释语句,至少要注释每个函数参数的含义和函数返回值的含义。
9、测试情况:给出程序的测试情况,并分析运行结果。
10、收获及体会:写出此次课程设计过程中的收获及体会。
五、评分标准1、程序运行结果(30%)2、设计报告(30%)3、设计考勤,平时上机成绩,教师不定期检查(10%)4、学生根据自己设计报告对教师的提问可以熟练的解释(10%)5、设计课题的难易程度(20%)六、参考设计题目课程设计题一:学生成绩管理系统设计目的:1、掌握线性链表的建立。
数据结构课程设计报告书
1引言本设计使用C语言编写程序,以栈为主体实现功能,所以首先我们要认识一下栈。
栈是限定仅在表尾进行插入或删除操作的线性表,其存取数据时按照后进先出的原则进行。
而此次课程设计就是利用栈的这一特性并结合栈的输入、输出、判空等基本操作,来实现栈的三种实际应用:数制转换,行编辑和括号匹配。
2问题分析2.1 设计内容的分析本次课程设计的目标是使用C语言编写一个程序,当使用者进入程序时,首先出现一个菜单项,使用者可以选择所要实现的功能,从而进入相应的程序模块:数制转换:进入此模块后,程序提示输入任意一个十进制数和所要转换的进制,程序运行后得到相应进制的数据。
行编辑:进入模块后,程序提示输入原始数据,运行时当遇到#时退格一个,当遇到@时,清空所在行中之前的所有数据;当遇到\n时,完成前一行的输入处理,进行下一行的输入;当遇到¥时,全文输入编辑结束。
括号匹配:进入模块后,程序提示输入所要检验的括号以#为结束符,当括号匹配不正确时,程序输出相应的:左右括号匹配次序不正确,左括号多于右括号,右括号多于左括号。
当左右括号匹配无误时,输出左右括号匹配正确。
2.2 程序中用到的数据结构本程序主要是运用栈的相关知识,所以为了实现上述的三种功能,需要定义栈的结构用于储存数据:typedef char ElemType;//定义用户变量,代替char,便于以后修改typedef struct{ElemType *base;//在栈构造之前和销毁之后,base的值为NULLElemType *top;//栈顶指针int stacksize;//当前已分配的存储空间,以元素为单位}SqStack;实现第一个模块功能时,需要使用while语句进行栈的输入输出。
实现第二个模块功能时,需要使用while语句和swicth语句的嵌套来进行文本编辑实现第三个模块功能时,需要使用if、else语句的多重嵌套来判断匹配3总体设计3.1 总体设计思路本程序主要首先在主函数通过调用switch 语句来选择需要实现的功能,从而进入相应的函数模块。
数据结构课程设计(5篇)
数据结构课程设计(5篇)第一篇:数据结构课程设计课程设计说明书设计名称:数据结构课程设计题目:设计五:二叉树的相关操作学生姓名:专业:计算机科学与技术班级:学号:指导教师:日期: 2012 年 3 月 5 日课程设计任务书计算机科学与技术专业年级班一、设计题目设计五二叉树的相关操作二、主要内容建立二叉树,并对树进行相关操作。
三、具体要求1)利用完全二叉树的性质建立一棵二叉树。
(层数不小于4层)2)统计树叶子结点的个数。
3)求二叉树的深度。
4)能够输出用前序,中序,后序对二叉树进行遍历的遍历序列。
四、进度安排依照教学计划,课程设计时间为:2周。
本设计要求按照软件工程的基本过程完成设计。
建议将时间分为三个阶段:第一阶段,根据题目要求,确定系统的总体设计方案:即系统包括哪些功能模块,每个模块的实现算法,并画出相应的流程图.同时编写相应的设计文档;第二阶段,根据流程图编写程序代码并调试,再将调试通过的各个子模块进行集成调试;第三阶段,归纳文档资料,按要求填写在《课程设计说明书》上,并参加答辩。
三个阶段时间分配的大概比例是:35: 45: 20。
五、完成后应上交的材料本课程设计要求按照学校有关规范的要求完成,在课程设计完成后需要提交的成果和有关文档资料包括课程设计的说明书,课程设计有关源程序及可运行程序(含运行环境)。
其中课程设计说明书的格式按学校规范(见附件),其内容不能过于简单,必须包括的内容有:1、课程设计的基本思想,系统的总功能和各子模块的功能说明;2、课程设计有关算法的描述,并画出有关算法流程图;3、源程序中核心代码的说明。
4、本课程设计的个人总结,主要包括以下内容:(1)课程设计中遇到的主要问题和解决方法;(2)你的创新和得意之处;(3)设计中存在的不足及改进的设想;(4)本次课程设计的感想和心得体会。
5、源代码要求在关键的位置有注释,增加程序的可读性。
程序结构和变量等命名必须符合有关软件开发的技术规范(参见有关文献)。
数据结构课程设计说明书
计算机本科《数据结构与C语言》课程设计任务书一、设计目的1.学习和巩固C 语言及数据结构的基本知识。
2.充分体会在程序设计中数据的重要作用,学会在程序设计中运用数据结构的相关知识解决问题。
二、设计基本要求1.符合课题要求,实现相应功能;2.要求界面友好美观,操作方便易行;3.注意程序的实用性、安全性;4.随时记录设计情况(备查,也为编写设计说明书作好准备);5.设计成果:设计说明书一份(附录:设计说明书格式及要求);源程序(能编译成可执行文件并能正常运行)。
三、设计组织方法1.分组选题:每班分若干组,每组一个课题(可根据课题工作量大小,合理分配人数),每组设组长一名,负责该组设计工作的协调、分工等。
2.设计过程:1)按组讨论、确定设计方案,确定程序模块,并进行明确分工;2)各人分别完成自己的设计任务,编写源程序,并调试好;3)程序汇总、编译。
四、设计时间第17-18周,共计二周五、设计课题1.飞机订票系统实现如下功能:录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
修改航班信息:当航班信息改变可以修改航班数据文件要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;2.宿舍管理查询软件为宿舍管理人员编写一个宿舍管理查询软件, 程序设计要求:录入数据,数据的修改,查询: A.按姓名查询 B.按学号查询 C.按房号查询,显示任一查询结果,统计等功能3.学生成绩管理系统实现功能:程序菜单功能或详细的提示功能,学生信息输入、输出、添加、删除、查询(按学号及姓名)、排序(按姓名,平均成绩,总成绩)、文件保存、文件读入。
数据结构课程设计任务书
《数据结构》课程设计任务书课程设计时间:2009-2010学年第一学期指导老师:刘惠临班级: 计算机08-5 一、课程设计的目的数据结构课程主要是研究非数值计算的程序设计问题中所出现的计算机操作对象以及它们之间的关系和操作的学科。
数据结构是介于数学、计算机软件和计算机硬件之间的一门计算机专业的核心课程,它是计算机程序设计、数据库、操作系统、编译原理及人工智能等的重要基础,广泛的应用于信息学、系统工程等各种领域。
学习数据结构是为了将实际问题中所涉及的对象在计算机中表示出来并对它们进行处理。
通过课程设计可以提高学生的思维能力,促进学生的综合应用能力和专业素质的提高。
通过此次课程设计主要达到以下目的:⏹了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;⏹初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;⏹提高综合运用所学的理论知识和方法独立分析和解决问题的能力;⏹训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。
二、课程设计的基本要求1、独立思考,独立完成:课程设计中各任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝。
2、做好上机准备:每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。
3、按照课程设计的具体要求建立的功能模块,每个模块要求按照如下几个内容认真完成;其中包括:a)需求分析:在该部分中叙述,每个模块的功能要求b)概要设计在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义)。
c)详细设计各个算法实现的源程序,对每个题目要有相应的源程序(可以是一组源程序,每个功能模块采用不同的函数实现)源程序要按照写程序的规则来编写。
要结构清晰,重点函数的重点变量,重点功能部分要加上清晰的程序注释。
《数据结构》课程设计任务书
《数据结构》课程设计任务书《数据结构》课程设计任务说明一、题目及选题规定1、课程设计题目1)航空客运订票系统2)用二叉树实现家谱的相关运算3)电话客户服务模拟2、选题规定数据结构课程设计需独立完成1个选题内容。
1)~3)选题中任选一个。
二、课程设计进度安排1.问题分析和任务定义(3学时)内容:根据设计题目的要求,充分分析和理解问题,明确问题要求做什么(不是怎么做?),限制条件是什么。
要求:掌握问题分析的方法,以无歧义的陈述说明程序设计的任务;了解以用例图来明确系统功能的方法。
重难点:以无歧义的陈述说明程序设计的任务;对问题作透彻分析,避免出现需求分析错误。
说明:本阶段是解决“做什么”的问题,就是要全面理解用户的各项要求,并准确表达所接受的用户需求。
2.逻辑设计和数据结构的选择(3学时)内容:为操作对象定义相应的数据结构,以结构化程序设计的思想方法为原则划分各个模块,定义数据的抽象数据类型。
要求:掌握逻辑设计和数据结构选择的方法。
重难点:逻辑设计和数据结构选择。
说明:本阶段的主要任务是把需求分析得到得数据流图转换为软件结构和数据结构。
设计软件结构的具体任务是:将一个负责系统按功能进行模块划分、建立模块的层次结构及调用关系、确定模块间的接口及人机界面等。
数据结构设计包括数据特征的描述、确定数据的结构特性、以及数据库的设计。
总体设计建立的是目标系统的逻辑模型,与计算机无关。
3.详细设计和编码(5个学时)内容:算法的具体描述和代码的书写要求:掌握在逻辑设计基础上作详细设计的方法把详细设计的结果进一步求精为程序设计语言程序。
同时加入一些注解和断言,使程序中逻辑概念清楚。
重难点:在逻辑设计基础上作详细设计并编码实现。
说明:本阶段主要任务是设计每个模块的实现算法、所需的局部数据结构。
详细设计的目标有两个:实现模块功能的算法要逻辑上正确和算法描述要简明易懂。
4.上机调试(4个学时)内容:源程序的输入和代码的调试要求:能够熟练掌握调试工具的各种功能,设计测试数据确定疑点,通过修改程序来证实它或绕过它。
《数据结构》课程设计任务书
《数据结构》课程设计任务书一、课程设计教学目的及基本要求1. 了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;2. 初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3. 提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4. 训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风;5. 独立完成或分组完成;6. 题材不限,或从参考题目中任选一题;7. 仅限用C语言编写程序;8. 7月3日前完成。
9./jsjxy/jpkc/中课程资源有五份课程设计样例,格式可以参照,不能抄袭!10.允许分小组完成,每组最多3人组成,每人分别都要提交自己的课程设计报告,并填写附录文件“09软工数据结构课程设计分组情况.xls”。
11.同一个题目不能超过6个小组选作,“整个专业分组表”请2个班班长一起汇总,6月15日前发我信箱huangsix@。
12.每个同学设计报告命名“学号姓名.doc”,7月3日前“按班级”打一个压缩包发我信箱。
二、课程设计步骤1. 问题分析和任务定义:根据设计题目的要求,充分地分析和理解问题,明确问题要求做什么?(而不是怎么做?)限制条件是什么?2. 逻辑设计:对问题描述中涉及的操作对象定义相应的数据类型,并按照以数据结构为中心的原则划分模块,定义主程序模块和各抽象数据类型。
逻辑设计的结果应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的功能说明),各个主要模块的算法,并画出模块之间的调用关系图;3. 详细设计:定义相应的存储结构并写出各函数的伪码算法。
在这个过程中,要综合考虑系统功能,使得系统结构清晰、合理、简单和易于调试,抽象数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体。
详细设计的结果是对数据结构和基本操作作出进一步的求精,写出数据存储结构的类型定义,写出函数形式的算法框架;4. 程序编码:把详细设计的结果进一步求精为程序设计语言程序。
数据结构课程设计说明书模板
目录1.设计目的与任务 (2)2.需求分析 (2)3.设计 (2)3.1设计思想 (2)3.2设计表示 (3)4.用户手册 (5)5.测试数据及测试结果 (5)6.课程设计总结 (6)程序清单 (6)1.设计目的与任务2.需求分析模拟某校九层教学楼的电梯系统。
该楼有一个自动电梯,能在每层停留。
九个楼层由下至上依次称为地下层、第一层、第二层、……第八层,其中第一层是大楼的进出层,即是电梯的“本垒层”,电梯“空闲”时,将来到该层候命。
乘客可随机地进出于任何层。
对每个人来说,他有一个能容忍的最长等待时间,一旦等候电梯时间过长,他将放弃。
模拟时钟从0开始,时间单位为0.1秒。
人和电梯的各种动作均要消耗一定的时间单位(简记为t),比如:有人进出时,电梯每隔40t测试一次,若无人进出,则关门;关门和开门各需要20t;每个人进出电梯均需要25t;如果电梯在某层静止时间超过300t,则驶回1层侯命。
而题目的最终要求输出时:按时序显示系统状态的变化过程,即发生的全部人和电梯的动作序列。
3.设计3.1设计思想(1)数据结构设计本题中的电梯的变化,是一个动态变化的过程,要在动态过程中实现正常跳转,首先要确定各种跳转的状态,因而这里我使用枚举类型来表示电梯的各种状态的:enum {up,down,stop,home}State(home);同时初始化最初状态为电梯在本垒层。
而在电梯的运行过程中对于乘客来说,显然有一个进入电梯与出电梯的队列,因而在这里我是用的链表来实现这个过程的,同时用结构体来保存该乘客的信息:typedef struct passage{int now;//乘客当前所在的位置int dis;//乘客的目地地int wait;//最长的等待的时间int waitnow;//已经等待的时间struct passage *next;}Passage;虽然电梯中的状态是由枚举类型来实现的,但是在整个程序的运行过程中,我还是为电梯设置了一个结构体类型,以便保存更多的信息:typedef struct lift{int count_C;//计数电梯已到达的层数int count_A;//系统的总时间计数器记得必须初始化为0int flag_in[High];//九个楼层有无请求的标志哪个楼层如果有请求该标志置1int num;//等待队列中的人数记得要进行初始化为0int people;//电梯中人数int flag_out[High];}Lift;(2)算法设计顾名思义本程序在运行的过程中用到的算法便是—“电梯算法”,电梯算法借鉴了磁盘寻道C-LOOK算法,即电梯向一个方向运行,直到这个方向上没有服务为止。
《数据结构课程设计》指导书
《数据结构》课程设计指导书沈阳理工大学.信息学院2013.11.1一.目的与意义软件设计能力对计算机专业的学生是很重要。
通过数据结构的学习,使学生对软件编程能力有一定的提高。
数据结构课程设计是锻炼学生在进一步掌握模块化、结构化程序设计的方法的同时,培养学生运用已学知识分析问题、解决问题及编写实用程序的能力,通过对线性化、层次化、网络化数据结构的了解进一步掌握自然数据的结构方式及组织方式,让学生深入体会存储在计算机中的数据及程序中如何运用数据实现编程。
主要目的如下:1.通过本课程设计使学生对面向对象的设计过程有初的认识,并对面向对象的高能语言的学习打下基础,2.通过不同类型的程序设计使学生进一步掌握数据的几种不同的组织和存储方式,为高级编程做准备,3.为专业课的深入学习和毕业设计打基础二.任务和要求分析每一组题目,按要求完成相应的题目:1.题目参照附录中《数据结构课程设计》题目选题。
2. 要求:1)对相应的题目进行算法设计2)编写源代码3)上机调试4)显示调试结果5)写出实验总结3.课程设计说明书设计完成后,将自己选定的题目按上述要求完成课程设计说明书。
课程设计说明书内容包含:题目、要求、初步设计(可以是流程图、功能模块图)、详细设计、程序代码、测试数据、运行结果、遇到的问题及总结几部分。
三.进度安排设计总学时为2周第一周:查阅资料、小组讨论、进行模块划分写出分析报告,画N-S结构化框图,编写程序清单,上机调试.第二周周四、五:验收(计算机机房),并将课程设计报告交上来.四.考核标准与成绩评定方式成绩评定有如下几项参考:1.初步设计内容的考核:是否有查阅资料能力?是否有设计思想?2.程序编码能力调试能力的考核:程序是否清晰、易读?在技算计上是否可独立完成程序的调试,是否熟练?3.说明书质量的考核:设计结构是否合理?叙述是否正确?方案是否可行?4.答辩:设计结果的调试能力,对自己设计是否熟练?5.出勤率极平时表现的考核:出勤超过2次不到者成绩为不及格。
数据结构课程设计任务书
课程设计任务书《数据结构》课程设计一、课程设计的目的课程设计是《数据结构》课程教学必不可缺的一个重要环节,可加深学生对该课程所学内容的进一步的理解与巩固,是将计算机课程与实际问题相联接的关键步骤。
通过课程设计,能够提高学生分析问题、解决问题,从而运用所学知识解决实际问题的能力,因而必须给予足够的重视。
二、课程设计的要求1.明确课设任务,复习与查阅有关资料。
2.按要求完成课设内容,课设报告要求文字和图工整、思路清楚、正确。
3.应用程序应具有一定的可用性。
凡用户输入时,给出足够的提示信息。
格式明显易懂,使用户感到方便使用。
4.程序具有一定的健壮性,不会因为用户的输入错误引起程序运行错误而中断执行:对输入值的类型、大小范围、字符串的长度等,进行正确性检查,对不合法的输入值给出出错信息,指出错误类型,等待重新输入。
三、课程设计报告内容课程设计报告中应包括封面、内容摘要、关键词、目录、正文、参考文献、附录、致谢等几部分。
正文包括绪论、需求分析、概要设计、详细设计、调试分析、测试结果、总结等。
具体:(1)封面包括设计题目、所在系、专业、班级、姓名、指导教师姓名和完成日期。
(2)内容摘要应扼要叙述课设的主要内容、特点,文字要精练,是一篇具有独立性和完整性的短文,包括基本研究方法、理论与实际意义。
关键词是供检索用的主题词条,应采用能够覆盖课程设计报告主要内容的通用专业术语。
(3)绪论一般作为第1章,综述课程设计选题的目的、背景和意义,所要研究的主要内容。
(4)需求分析陈述说明课程设计的任务。
明确规定:输入/输出形式和输出值的范围;程序所能达到的功能;测试的数据:包括正确的输入和错误的输入及其相应的输出结果。
(5)概要设计包括设计思想、实现方法、系统中主要函数及各函数间的关系描述。
(6)详细设计包括实现概要设计中定义的所有数据类型,对每个操作需要写出伪代码算法。
(7)调试分析包括:调试过程中遇到的问题,如何解决的以及对设计实现的回顾讨论和分析;对算法的分析和改进设想;经验和体会等。
数据结构课程设计方案
《数据结构》课程设计指导书课程代号:41110130总学时<或周数):1周适用专业:计算机科学与技术各专业先修课程:高级语言程序设计、数据结构一、课程设计<实践)目的本课程设计是《数据结构》课程的组成之一,也是它的继续和延伸。
采用集中学习方法,分组完成一个小型应用系统。
开设本课程的目的是使学生通过参加小型软件的开发过程,进一步了解并掌握数据结构与算法的设计方法,具备初步的分析和设计能力;同时培养学生的创新能力和创新意识,锻炼他们的团队协作精神。
二、课程设计<实践)要求1.了解并掌握数据结构与算法的设计方法,具备初步的分析和设计能力;2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3.提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。
5.设计的题目要求达到一定工作量<500行以上代码),并具有一定的深度和难度。
6.编写出课程设计说明书,说明书不少于10页<代码不算)。
7. 学生必须仔细阅读《数据结构》课程设计方案,认真主动完成课设的要求。
有问题及时主动通过各种方式与教师联系沟通。
学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课程设过程中不断检测自己的计划完成情况。
三、课程设计<实践)内容设计结束后要写出课程设计报告,以作为整个课程设计评分的书面依据和存档材料。
设计报告以规定格式的电子文档书写、打印并装订,排版及图、表要清楚、工整。
内容及要求如下:封面:题目、班级、姓名、学号、指导教师和完成日期。
正文包括以下6个内容:1、分析问题和确定解决方案;以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?并明确规定:(1> 输入的形式和输入值的范围;(2> 输出的形式;(3> 程序所能达到的功能;(4> 测试数据:包括正确的输入及其输出结果和含有错误的输入及其输出结果。
《数据结构》课程设计任务书
《数据结构》课程设计任务书一、设计目的《数据结构》是一门实践性较强的软件基础课程,为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。
本课程设计的目的就是要达到理论与实际应用相结合,使同学们能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养基本的、良好的程序设计技能。
二、设计要求1.通过这次设计,要求在数据结构的逻辑特性和物理表示、数据结构的选择应用、算法的设计及其实现等方面加深对课程基本内容的理解。
同时,在程序设计方法以及上机操作等基本技能和科学作风方面受到比较系统和严格的训练。
2.学生必须仔细研读《数据结构》课程设计要求,以学生自学为主、指导教师指导为辅,认真、独立地完成课程设计的任务,有问题及时主动与指导教师沟通。
3.本次课程设计按照教学要求需要在一周时间内独立完成,学生要发挥自主学习的能力,充分利用时间,安排好课程设计的时间计划,并在课程设计过程中不断检测自己的计划完成情况,及时地向指导教师汇报。
4.编程语言任选。
三、设计选题选题说明:前面6个为基础题(必选一题,可达60分),后面题目*越多难度越大,根据实际选做题目的难度和数量以及实现程序的完善性可以适当加减分;同学们在选题时,要结合个人实际情况,确保及格,力争多做。
1.集合的并、交和差运算任务:编制一个能演示执行集合的并、交和差运算的程序。
要求:(1) 集合的元素限定为小写字母字符[‘a’..’z’] 。
(2) 演示程序以用户和计算机的对话方式执行。
实现提示:以链表表示集合。
选作内容:(1) 集合的元素判定和子集判定运算。
(2) 求集合的补集。
(3) 集合的混合运算表达式求值。
(4) 集合的元素类型推广到其他类型,甚至任意类型。
2.停车场管理任务:设停车场是一个可以停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。
汽车在停车场内按车辆到达时间的先后顺序,依次有北向南排列(大门在最南端,最先到达的第一车停放在车场的最北端),若车场内已停满n辆车,那么后来的车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后进入的车辆必须先退出车场为它让路,待该辆车开出大门外,其他车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。
数据结构课程设计
《数据结构》课程设计——赫夫曼编码/译码器设计指导教师:班级:学号:姓名:数据结构课程设计任务书一、题目:赫夫曼编码/译码器设计二、目的:1、提高分析问题、解决问题的能力,进一步巩固数据结构各种原理与方法。
2、熟悉掌握一门计算机语言,可以进行数据算法的设计。
三、要求3.1总体要求1、要充分认识课程设计对培养自己的重要性,认真做好设计前的各项准备工作。
尤其是对编程软件的使用有基本的认识。
2、既要虚心接受老师的指导,又要充分发挥主观能动性。
结合课题,独立思考,努力钻研,勤于实践,勇于创新。
3、独立按时完成规定的工作任务,不得弄虚作假,不准抄袭他人内容,否则成绩以不及格计。
4、在设计过程中,要严格要求自己,树立严肃、严密、严谨的科学态度,必须按时、按质、按量完成课程设计。
3.2实施要求1、理解赫夫曼编码/译码的确切意义。
2、独立进行方案的制定,系统结构设计要合理。
3、在程序开发时,则必须清楚主要实现函数的目的和作用,需要在程序书写时说明做适当的注释。
在写课设报告时,必须要将主要函数的功能和参数做详细的说明。
4、通过多组数据来检测该系统的稳定性和正确性。
3.3 课程设计报告的内容及要求在完成课题验收后,学生应在规定的时间内完成课程设计报告一份(不少于2000字)。
四、工作内容及工作计划:(一周,集中进行)一、实验目的♦需求分析:在该部分中叙述实现的功能要求;♦概要设计:在此说明每个部分的算法设计说明(可以是描述算法的流程图),每个程序中使用的存储结构设计说明(如果指定存储结构请写出该存储结构的定义);♦详细设计各个算法实现的源程序,对每个题目要有相应的源程序(可以是一组源程序,每个功能模块采用不同的函数实现)。
源程序要按照写程序的规则来编写。
要结构清晰,重点函数的重点变量、重点功能部分要加上清晰的程序注释二、实验原理三、实验步骤(1) 编码结果以文本方式存储在文件Codefile中。
(2) 用户界面可以设计为“菜单”方式:显示上述功能符号,再加上“Q”,表示退出运行Quit。
数据结构课程设计指导书
数据结构课程设计指导书《数据结构》课程设计指导书一、课程设计目的《数据结构》是一门实践性较强的软件基础课程,为了学好这门课程,必须在掌握理论知识的同时,加强上机实践。
课程设计是加强学生实践能力的一个强有力手段。
本课程设计的目的就是要达到理论与实际应用相结合,使学生深化理解书本知识,获取上机实践经验,使学生能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养软件工作者所需的动手能力、独立解决问题的能力。
该课程设计侧重软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧,以至一整套软件工作规范的训练和科学作风的培养。
通过该课程设计的操作与实践,使学生真正掌握数据结构相关算法的实现及应用方法,在一定程度上提高使用数据结构相关算法的综合设计能力,具体掌握的基本能力如下:1.了解并掌握数据结构与算法的设计方法,具备初步的独立分析和设计能力;2.初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;3.提高综合运用所学的理论知识和方法独立分析和解决问题的能力;4.训练用系统的观点和软件开发一般规范进行软件开发,培养软件工作者所应具备的科学的工作方法和作风。
二、课程设计要求学生必须仔细阅读《数据结构》课程设计方案,认真主动完成课程设计的要求。
通过设计一个完整的程序,使学生掌握数据结构的应用,算法的编写。
要求如下:1.做好上机准备:要充分认识课程设计对自己的重要性,认真做好设计前的各项准备工作。
每次上机前,要事先编制好准备调试的程序,认真想好调试步骤和有关环境的设置方法,准备好有关的文件。
2.既要虚心接受老师的指导,又要充分发挥主观能动性。
结合课题,独立思考,努力钻研,勤于实践,勇于创新。
充分利用时间,安排好课程设计的时间计划,并在课程设计过程中不断检测自己的计划完成情况,及时向教师汇报。
3.独立思考,独立完成:课程设计中各项任务的设计和调试要求独立完成,遇到问题可以讨论,但不可以拷贝。
数据结构课程设计任务书范本样本
数据结构课程设计任务书一、选题选题标准是数据结构算法实现及在具体问题中应用。
可选择下列和实际应用紧密结合较综合性题目,也可自选(自选题必需经过任课老师认可)。
要求经过课程设计实践,在数据结构表示、数据结构选择及应用、算法设计和实现等方面加深对数据结构课程基础内容了解和综合利用能力提升。
对下列题目每个同学课设任务按下式确定:按宿舍,每两个宿舍同学组成一小组,共同完成一个任务数据结构课程设计任务书1题目:学生运动会成绩数据库功效:学生运动会成绩数据库系统统计某校运动会上全部运动项目,各系取得分数及排名情况,包含50、100、200,400,1500米,跳高,跳远,标枪,铅球铁饼等。
进入系统后能够输入和修改某个项目标结果情况,能够按各系院编号输出总分;按总分排序;按男团体总分排序;按系院编号查询;按项目编号查询;按女团体总分排序。
分步实施:1)初步完成总体设计,搭好框架,确定人机对话界面,确定函数个数;2)完成最低要求:建立一个文件,包含某个系,5个项目标得分情况,能对文件中信息进行扩充(追加),修改和删除;3)深入要求:完成对多个系,多个项目标得分排序,和完成系统查询功效。
有爱好同学能够自己扩充系统功效。
键盘输入:系院数目,男子项目数女子项目数,(每项目取前三名,分别为10,5,2分)要求:1)界面友好,函数功效要划分好2)总体设计应画一步骤图3)程序要加必需注释4)要提供程序测试方案5)程序一定要经得起测试,宁可功效少部分,也要能运行起来,不能运行程序是没有价值。
数据结构课程设计任务书2题目:哈夫曼树应用功效:1.从终端读入字符集大小n,和n个字符和n个权值,建立哈夫曼树并将它存于文件hfmTree中.将已在内存中哈夫曼树以直观方法(比如树)显示在终端上;2.利用已经建好哈夫曼树(如不在内存,则从文件htmTree中读入),对文件ToBeTran中正文进行编码,然后将结果存入文件CodeFile中,并输出结果,将文件CodeFile以紧凑格式先是在终端上,每行50个代码。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《数据结构》课程设计
一、数据结构课程设计要求
学生必须仔细阅读《数据结构》课程设计方案,认真主动完成课设的要求。
有问题及时主动通过各种方式与教师联系沟通。
学生要发挥自主学习的能力,充分利用时间,安排好课设的时间计划,并在课设过程中不断检测自己的计划完成情况,及时的向教师汇报。
课程设计按照教学要求需要一周时间完成,一周中每天(按每周5天)至少要上3-4小时的机来调试C语言设计的程序,总共至少要上机调试程序30小时。
课程设计在期末考试之前一周交。
最好一起上交。
同班同学之间最好不要相同。
设计说明书可以打印。
二、数据结构课程设计的具体内容
本次课程设计完成如下模块(共16个模块,每组学生至少挑选1个功能块完成,多做可以加分)
1、运动会分数统计
任务:参加运动会有n个学校,学校编号为1……n。
比赛分成m个男子项目,和w个女子项目。
项目编号为男子1……m,女子m+1……m+w。
不同的项目取前五名或前三名积分;取前五名的积分分别为:7、5、3、2、1,前三名的积分分别为:5、3、2;哪些取前五名或前三名由学生自己设定。
(m<=20,n<=20)功能要求:1).可以输入各个项目的前三名或前五名的成绩;
2).能统计各学校总分,
3).可以按学校编号、学校总分、男女团体总分排序输出;
4).可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。
规定:输入数据形式和范围:20以内的整数(如果做得更好可以输入学校的名称,运动项目的名称)
输出形式:有英文提示,各学校分数为整形
界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。
存储结构:学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。
(数据文件的数据读写方法等相关内容在c语言程序设计的书上,请自学解决)请在最后的上交资料中指明你用到的存储结构;
测试数据:要求使用1、全部合法数据;2、整体非法数据;3、局部非法数据。
进行程序测试,以保证程序的稳定。
测试数据及测试结果请在上交的资料中
写明;
2、一元多项式计算
任务:能够按照指数降序排列建立并输出多项式;
能够完成两个多项式的相加,并将结果输入;
在上交资料中请写明:存储结构、多项式相加的基本过程的算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;
3、订票系统
任务:通过此系统可以实现如下功能:
录入:
可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)
查询:
可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);
可以输入起飞抵达城市,查询飞机航班情况;
订票:(订票情况可以存在一个数据文件中,结构自己设定)
可以订票,如果该航班已经无票,可以提供相关可选择航班;
退票:可退票,退票后修改相关数据文件;
客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
修改航班信息:
当航班信息改变可以修改航班数据文件
要求:
根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;
4、迷宫求解
任务:可以输入一个任意大小的迷宫数据,用非递归的方法求出一条走出迷宫的路径,并将路径输出;
要求:
在上交资料中请写明:存储结构、基本算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;
5、文章编辑
功能:输入一页文字,程序可以统计出文字、数字、空格的个数。
静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。
存储结构使用线性表,分别用几个子函数实现相应的功能;
输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。
输出形式:(1)分行输出用户输入的各行字符;(2)分4行输出"全部字母数"、"数字个数"、"空格个数"、"文章总字数"(3)输出删除某一字符串后的文章;
6、稀疏矩阵操作
任务:(1)完成一稀疏矩阵转置,(2)能够完成两个稀疏矩阵相加,(3)输出稀疏矩阵
在上交资料中请写明:存储结构、稀疏矩阵相加的基本过程的算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;
7、 joseph环
任务:编号是1,2,……,n的n个人按照顺时针方向围坐一圈,每个人只有一个密码(正整数)。
一开始任选一个正整数作为报数上限值m,从第一个仍开始顺时针方向自1开始顺序报数,报到m时停止报数。
报m的人出列,将他的密码作为新的m值,从他在顺时针方向的下一个人开始重新从1报数,如此下去,直到所有人全部出列为止。
设计一个程序来求出出列顺序。
要求:利用单向循环链表存储结构模拟此过程,按照出列的顺序输出各个人的编号。
测试数据:
m的初值为20,n=7 ,7个人的密码依次为3,1,7,2,4,7,4,首先m=6,则正确的输出是什么?
要求:
输入数据:建立输入处理输入数据,输入m的初值,n ,输入每个人的密码,建立单循环链表。
输出形式:建立一个输出函数,将正确的输出序列
8、猴子选大王
任务:一堆猴子都有编号,编号是1,2,3 ...m ,这群猴子(m个)按照1-m的顺序围坐一圈,从第1开始数,每数到第N个,该猴子就要离开此圈,这样依次下来,直到圈中只剩下最后一只猴子,则该猴子为大王。
要求:
输入数据:输入m,n m,n 为整数,n<m
输出形式:中文提示按照m个猴子,数n 个数的方法,输出为大王的猴子是几号,建立一个函数来实现此功能
9、建立二叉树,层序、先序遍历(用递归或非递归的方法都可以)
任务:
要求能够输入树的各个结点,并能够输出用不同方法遍历的遍历序列;分别建立建立二叉树存储结构的的输入函数、输出层序遍历序列的函数、输出先序遍历序列的函数;
10、赫夫曼树的建立
任务:建立最优二叉树函数
要求:可以建立函数输入二叉树,并输出其赫夫曼树
在上交资料中请写明:存储结构、基本算法(可以使用程序流程图)、输入输出、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;
11、纸牌游戏
任务:编号为1-52张牌,正面向上,从第2张开始,以2为基数,是2
的倍数的牌翻一次,直到最后一张牌;然后,从第3张开始,以3为基数,是3的倍数的牌翻一次,直到最后一张牌;然后…从第4张开始,以4为基数,是4的倍数的牌翻一次,直到最后一张牌;...再依次5的倍数的牌翻一次,6的,7的直到以52为基数的翻过,输出:这时正面向上的牌有哪些?
12、图的建立及输出
任务:建立图的存储结构(图的类型可以是有向图、无向图、有向网、无向网,学生可以任选两种类型),能够输入图的顶点和边的信息,并存储到相应存储结构中,而后输出图的邻接矩阵。
13、最短路径
任务:完成对图中求任意两点间的最短路径算法,注意,边有可能是负边,但环中权值之和必大于0
14、关键路径
任务:求给定的AOV网中的关键路径,要求能打印出该关键路径。
15、各种排序
任务:用程序实现插入法排序、起泡法改进算法排序;
利用插入排序和冒泡法的改进算法,将用户随机输入的一列数按递增的顺序排好。
输入的数据形式为任何一个正整数,大小不限。
输出的形式:数字大小逐个递增的数列?
16、实现平衡二叉排序树
任务:完成书上规定的平衡二叉排序树基本算法。
能利用你设计出的代码进行相关的处理。
三、上交相关内容要求
上交的成果的内容必须由以下四个部分组成,缺一不可
1.上交源程序:学生按照课程设计的具体要求所开发的所有源程序(应该放到一个文件夹中);
2.上交程序的说明文件:(保存在.doc中)在说明文档中应该写明上交程序所在的目录,上交程序的主程序文件名,如果需要安装,要有程序的安装使用说明;
《数据结构》课程设计说明书XXXXXXXXXXXXXXXXX(题目)
班级组别:
指导老师:完成时间:
组长:学号:
组员1:学号:
组员2:学号:
组员3:学号:
组员4:学号:
成绩:
目录
目录自动生成。
行距1.5倍,字体为小四,宋体。
内容组织框架如下,可根据实际情况作改动:
一、课题设计任务
对任务的描述,每个问题最好详细交待所要完成的功能,这部分内容可根据小组成员的讨论意见进行修改。
二、任务分析
简述任务的处理过程及分析结果。
三、概要设计(总体设计)
包括功能模块的划分,各模块的调用关系图,程序总体流程图等。
四、详细设计
1、数据逻辑结构:最好用ADT描述之。
2、数据存储结构:对于程序所处理的数据,写出相应的结构体,对全局变量,列出变量的含义及用途。
3、各模块流程图或算法:对重要的模块或关键算法必须要有。
五、测试(结论,或算法分析)
六、课程设计心得
七、参考文献
八:附录(源代码,分2列排版,小五号字,行距选最小值即可)。