数据结构与算法课程设计题目[范文大全]

时间:2019-05-15 02:50:28下载本文作者:会员上传
简介:写写帮文库小编为你整理了多篇相关的《数据结构与算法课程设计题目》,但愿对你工作学习有帮助,当然你在写写帮文库还可以找到更多《数据结构与算法课程设计题目》。

第一篇:数据结构与算法课程设计题目

数据结构与算法课程设计题目

1.成绩管理

问题描述:给出n个学生的考试成绩表,成绩表包括学生的学号、姓名、考试成绩(高等数

学、英语、物理),设计一个简单的成绩管理程序。

基本要求:

(1)建立成绩表,能够插入、删除、修改学生的成绩记录;(2)按任一单科成绩排序;(3)计算每名学生的平均成绩;

(4)统计任一单科成绩不及格的学生人数, 输出不及格人数及不及格的学生名单(5)根据平均成绩将成绩表按由高到低的次序排列,统计每名学生在考试中获得的名次,分数相同的为同一名次,按名次输出成绩表。

(6)成绩表保存在文件中, 可以从文件读取数据。

测试数据:学生可以根据自己班级的考试成绩单,任意截取一部分做为测试数据 2.一元多项式简单计算

问题描述:设计一个简单一元多项式计算器。基本要求:(1)输入并建立多项式;(2)输出多项式;

(3)两个多项式相加,输出结果多项式;(4)两个多项式相减,输出结果多项式。

提高要求:可以根据输入变量的值,计算出多项式的结果,且算法的效率高。测试数据:可任意选取两个一元多项式,可以是一般的多项式,也可以是稀疏多项式。3.舞伴问题

问题描述:一班有m个女生、n个男生(m不等于n), 举办一场舞会.男女生分别编号坐在舞池两边的椅子上,每曲开始时, 依次从男生和女生中各出一人配对跳舞, 本曲没成功配对者坐着等待下一曲找舞伴,设计一个程序模拟舞伴配对过程。

基本要求:输入男、女学生的姓名、性别,由程序自动为男女生编号,可以顺序编号,也可以随机编号,输出每曲配对情况(包括男、女生的姓名、性别和编号)。原始数据和结果数据要保存到文件中。

测试数据:分别选择男生多于女生、女生多于男生、男女生相等的三组测试数据 提高要求:计算出任意一位男生(编号为X)和任意一位女生(编号为Y), 在第K曲配对跳舞的情况。

4.文学研究助手(*)

问题描述:文学研究人员需要统计某篇英文小说中某些形容词的出现次数和位置。试写一个实现这一目标的文字统计系统,称为“文学研究助手”。基本要求:英文小说存于一个文本文件中,待统计的词汇集合要一次输入完毕,即统计工作必须在程序的一次运行之后就全部完成。程序的输出结果是每个词的出现次数和出现位置所在行的行号,格式自行设计, 结果保存到文件中。

提高要求:模式匹配选取KMP算法

测试数据:以你的C/C++/JAVA源程序模拟英文小说,相应语言的保留字集作为待统计的词汇集。

5.哈希表的设计与实现(*)

问题描述:针对某个单位电话号码簿,设计一个哈希表,并完成相应的建表和查表程序。基本要求:设每个记录有下列数据项:电话号码、用户名、住址。从键盘输入各记录,以用户名为关键字建立哈希表,哈希函数用除留取余数法构造,采用线性探测法解决冲突。可以插入、查找、删除并显示给定用户名的记录,并计算查找长度, 哈希表保存到文件中。

测试数据:取某个单位电话号码簿中的30个记录。

提高要求:将电话号码薄以文件形式保存到盘上,能够按用户名和电话号码两种形式建立哈希表并实现插入、查找、删除表中元素的功能。

6.管道铺设施工的最佳方案(*)

问题描述:需要在某个城市的n个小区铺设管道,则在这n个小区之间铺设n-1条管道即可,假设任意两个居民区之间都可以架设管道,但由于地理环境的不同,所需经费不同,选择最优的施工方案使总投资尽可能的少。

基本要求:输入表示小区间关系的图及每条管道的权值,选择出n-1条管道, 使总投资最小。图的信息输入一次后, 保存到文件中, 选择的n-1条管道输出到显示器的同时, 也保存于文件中。

测试用例:任意选择一个图,模拟小区间可能铺设的管道及费用。提高要求:显示原始图及选择n-1条管道后的图。

7.安排教学计划(**)

问题描述:大学的每个专业都要制定教学计划。假设任何专业都有固定的学习年限,每学年含两个学期,每学期的时间长度和学分上限值均相等。每个专业开设的课程都是确定的,而且课程在开设时间的安排上必须满足先修关系。每门课程有哪些先修课程是确定的,可以有任意多门,也可以没有。每门课程恰好占一个学期。试在这样的前提下设计一个教学计划编制程序。

基本要求:输入参数包括学期总数,一学期的学分上限,每门课程的课程号、学分和直接先修课的课程号;允许两种策略,一是使学生在各学期的学习负担尽量均匀,二是使课程尽量集中在前几个学期;若根据给定的条件问题无解,则报告适当的信息,否则将教学计划输出到用户指定的文件中。教学计划的表格格式自行设定, 可以从键盘读取数据也可以从文件读取数据, 结果保存到文件中。

测试数据:学期总数为6,学分上限为10,该专业共开设12门。以08级某专业必修课与选修课为例,选择12门课程及相应学分,制定一个表明各门课程先后约束关系的有向图。

提高要求:产生多种不同的方案,并使方案之间的差异尽可能地大。8.停车场管理程序(**)问题描述:设停车场内只有一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后开入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。试为停车场编制按上述要求进行管理的模拟程序。

基本要求:每一组输入数据包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码及到达或离去的时刻,对每一组输入数据进行操作后的输出数据为:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车离去;则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费,单位时间的停车费用由用户从键盘输入)。

测试数据:设输入数据为:(‘A’,1,5),(‘A’,2,10),(‘D’,1,15),(‘A’,3,20),(‘A’,4,25),(‘A’,5,30),(‘D’,2,35),(‘D’,4,40),(‘E’,0,0)。其中,‘A’表示到达;‘D’表示离去,‘E’表示输入结束。

提高要求:设停车场有南、北两个门,每个门都可以进、出车辆。9.计算表达式的值(**)问题描述:对于给定的一个表达式,表达式中可以包括常数、算术运行符(“+”、“-”、“*”、“/”)和括号,编写程序计算表达式的值。

基本要求:从键盘输入一个正确的中缀表达式,将中缀表达式转换为对应的后缀表达式,计算后缀表达式的值。

测试数据:任意选取一个符合题目要求的表达式。提高要求:(1)对于表达式中的简单错误,能够给出提示;

(2)表达式中可以包括单个字母表示的变量。

10.设计Huffman 编码器与解码器(***)

问题描述:利用哈夫曼编码进行信息通讯可以大大提高信道的利用率,缩短信息传输时间,降低传输成本。但是,这要求在发送端通过一个编码系统对待传输数据预先编码;在接受端将传来的数据进行译码。对于双工信道(即可以双向传输信息的信道),每端都需要一个完整的编/译码系统。试为这样的信息收发站编写一个哈夫曼码的编/译码系统。

基本要求:根据某字符文件统计字符出现频度,构造Huffman 树,编制Huffman编码,并将给定字符文件编码,生成编码文件;再将给定编码文件解码,生成字符文件。(要求按二进制位表示编码)测试数据:英文文件。

提高要求:用二进制表示编码,生成二进制的编码文件。11.银行业务模拟(***)

问题描述:设银行有四个服务窗口,一个等待队列, 每个窗口均可以办理存款、取款、挂失、还贷业务,每种业务所需的服务时间不同,客户到达银行后,先到打号机上打号,号票上包括到达时间、编号和需要办理的业务,然后在银行内等候, 当任一服务窗口空闲时,处理等候客户中排在最前面的客户的业务。写一个上述银行业务的模拟系统,通过模拟方法求出客户在银行内逗留的平均时间和每个窗口办理的客户数及办理的每种业务数。

基本要求:每个客户到达银行的时间和需要办理的业务随机产生,输出一天客户在银行的平均逗留时间和每个窗口每天办理的客户数和每种业务数。

测试数据:营业时间为8小时,其他模拟量自行设定。12.程序源代码的相似性(***)

问题描述:对于两个C++语言的源程序代码,用哈希表的方法分别统计两个程序中使用C++语言关键字的情况,并最终按定量的计算结果,得出两份程序的相似性。

基本要求:建立C++语言关键字的哈希表,统计在每个源程序中C++关键字出现的频度, 得到两个向量X1和X2,通过计算向量X1和X2的相对距离来判断两个源程序的相似性。

例如: 关键字 Void Int For Char if else while do break class 程序1关键字频度 4 3 0 4 3 0 7 0 0 2 程序2关键字频度 4 2 0 5 4 0 5 2 0 1 X1=[4,3,0,4,3,0,7,0,0,2] X2=[4,2,0,5,4,0,5,2,0,1] 设s是向量X1和X2的相对距离,s=sqrt(∑(xi1-xi2)2),当X1=X2时,s=0, 反映出可能是同一个程序;s值越大,则两个程序的差别可能也越大。

测试数据: 选择若干组编译和运行都无误的C++程序,程序之间有相近的和差别大的,用上述方法求s, 对比两个程序的相似性。

提高要求:建立源代码用户标识符表,比较两个源代码用户标识符出现的频度,综合关键字频度和用户标识符频度判断两个程序的相似性。

13.小型文本编辑器

问题描述:设计一个行编辑程序,使其具有通常行编辑器(如Vi、Edlin)应具备的基本功能。

基本要求:编辑器应具备对文本文件的查找、插人、删除、修改、字符串替换、统计字数,统计行数等功能,对于超过一屏的长文件,应能够分页显示,查找功能用字符串匹配算法实现。设计用户接口命令,实现对文本的编辑。具体的编辑命令,可参考数据结构算法网络教学平台上提供的edlin、Vi的命令集。

测试数据:任一文本文件。

提高要求:1.可以支持“* ”、“? ”等通配符;

2.支持复制、粘贴等功能

3.支持多文档同时编辑;

提示:可以考虑用双向链表实现,每一结点表示一行字符,注意每行字符不能超过255。14.小型英汉词典

问题描述:设计一个英汉词典,支持Member(查找)、Insert(插入)、Delete(删除)操作。

基本要求:实现字典的常用方法有:有序线性表(Memeber用二分检索实现)、AVL树(二叉搜索树)、Patricia Trie、散列表等,任选一种方法实现字典的操作,查找单词、插入单词(插入时,先查找,找不到插入,找到提示用户)、删除单词(删除时,先查找,找到删除,找不到提示用户)。

测试数据:任一英文单词。提高要求:选用两种以上的方法实现字典的操作,并比较不同实现算法的时间复杂度和空间复杂度。

提示:字典可以自己建立,但必须按字母a~z建立26个文件,建议从网上下载,文件类型为txt。

备注:

1.每道题目后面的*号,表示题目的难度系数;对应的评定成绩等级为及格(无*号)、中等(*号)、良好(**号)、优秀(***号),学生完成题目的基本要求,即可得到程序设计部分的相应等级成绩,完成题目提高要求,成绩可以向上浮动,如果没有完成基本要求,成绩向下浮动,直至不及格。

2.所有题目均需用C++完成,不能用C或MFC。3.实验班的学生原则上应选择“*”号多的题目。4.每道题的选题人数不能超过3人

第二篇:《数据结构与算法》课程设计教学大纲

《数据结构与算法》课程设计教学大纲(Data Structures & Algorithms)

一、基本信息

课程编号:E1132107 课程类别:学科基础课必修课 适用层次:本科

适用专业:计算机科学与技术、网络工程、软件工程等 开课学期:3 学 分:2学分 学 时:2周 考核方式:考查

二、教学目的

数据结构与算法课程设计不仅是数据结构与算法课程的实践教学环节,而且是一门综合性实验项目。通过这个实验,培养学生综合运用数据结构基本知识和程序设计基本知识,解决实际问题,提高程序设计的能力和团队协作精神。

本课程设计的目的就是要达到理论与实际应用相结合,使同学们能够根据数据对象的特性,学会数据组织的方法,能把现实世界中的实际问题在计算机内部表示出来,并培养基本的、良好的程序设计技能。

1.学生通过实践掌握线性表、树、图等数据结构的存储结构及算法实现; 2.培养学生利用数据结构知识解决实际问题的能力;3.使学生初步具备查阅资料、分析设计、上机实现和书写科技 报告的能力。

三、基本要求

1.指导教师要在选题、设计、上机实现等诸环节上投入精力,加强指导、讨论和答疑的力度。尤其在选题上,要充分考虑学生目前所具有的知识水平、掌握的开发工具、以及综合设计能力的现状,使题目取材合理、大小适中、难易适度,使学生在完成设计工作后,能有所收获。2.参加课程设计的学生要珍惜机会、勤奋工作、勇于创新、勇于探索、勇于实践,虚心向指导教师请教,向同学学习,独立完成设计任务。

3.学生需保质、保量、保时间进度地提交规范的课程设计报告,审查由指导教师负责。

四、教学内容

1.主要内容:应用所掌握的线性表、树、图等数据结构知识解决实际问题。2.软件开发工具:C/C++、JAVA。

3.课程设计题目:指导教师拟定(参考题目见附录1)

4.具体步骤:指导教师拟定设计题目,学生研究具体问题、进行需求分析、选择合适的数据结构、设计算法、编写并调试代码、书写文档材料、提交设计报告,最后,由指导教师验收并评定成绩。

5.设计内容及时间安排:第1-3天,选定题目,明确题目要求、确定数据结构、设计算法,并分析算法复杂度;第4-8天,编写程序、调试程序、测试程序;第9-10天,撰写设计报告,准备答辩(上机演示,回答教师提问)。6.设计报告书写要求:按照软件开发规范的要求书写设计报告(参见附录三报告书写格式);要求报告层次结构清晰、图表完整、语言通顺、字迹工整。7.验收要求:1)运行所设计的程序;2)回答有关问题;3)提交课程设计报告(打印或手写在实习报告册上);4)提交软盘(源程序)。(鼓励学生创新。对内容有创新者,成绩评定将适当提高)。

五、考核方法

学习成绩的评定方式:考查。

课程设计成绩评定 =平时出勤(20%)+设计报告(40%)+答辩(40%)通过设计答辩方式,并结合学生的动手能力,独立分析解决问题的能力和创新精神,总结报告和答辩水平以及学习态度综合考评。成绩分为优、良、中、及格和不及格五等。

六、教材与参考资料 1.建议教材:

[1] 数据结构(C++)版,王红梅、胡明、王涛编著,清华大学出版社,2005.7 [2] 自编教材

2.建议参考书目:

[1] 许卓群,杨冬青,唐世渭,张铭.数据结构与算法.高等教育出版社,2004.7 [2] 严蔚敏, 陈文博.数据结构及应用算法教程.清华大学出版社, 2001.2 [3] 朱晋蜀.数据结构(第一版).成都: 电子科技大学出版社, 2000.1 [4] Clifford A.Shaffer著.张铭,刘晓丹译.数据结构与算法分析.电子工业出版社,1998.8 [5] 殷人昆等.数据结构(用面向对象方法与C++描述).清华大学出版社,1999.7 [6] Ford W., Topp W.DATA STRUCTURES with C++.清华大学出版社(影印版),1997.3

附录一

参考题目(可分若干组,每个学生选择其中一个题目)

1.商厦家电库存管理 2.排序算法的时间比较

3.使用哈希表技术判断两个源程序的相似性 4.以队列实现的仿真技术预测理发馆的经营状况 5.某公园导游图

6.用树型结构的搜索算法模拟因特网域名的查询 7.管道铺设施工的最佳方案选择 8.表达式分析与求值程序 9.安排教学计划

10.设计Huffman 编码器与解码器 11.在国际象棋盘上马遍历问题 12.八皇后问题 13.民航售票系统 14.模拟旅馆管理系统中的床位分配和加收 15.银行业务活动的模拟

16.文字统计系统—文字研究助手 17.修道士野人问题 18.考试问题

19.计算机辅助考核系统 20.学籍管理系统

注:学生可以自选题目或选择指导老师拟定的题目。

附录二

开发步骤

1.分析题目的要求、目的; 2.选择适当的数据结构;

3.抽象数据类型的设计; 4.抽象数据类型的实现; 5.编写代码、上机调试; 6.总结验收、评价。

附录三 报告书写格式

1.问题描述

题目内容、基本要求 2.需求分析

软件的基本功能、输入/输出形式、测试数据要求 3.概要设计

所需的ADT及作用、主程序流程及模块调用关系 4.详细设计

实现概要设计的数据类型、每个操作的伪码算法、主程序和其它模块的伪码算法、函数调用关系图 5.编码与调试分析

编码与调试过程中遇到的问题及解决的办法,还存在哪些没有解决的问题? 6.使用说明

简要说明程序运行操作步骤 7.测试结果

8.课程设计心得体会

第三篇:数据结构与算法课程设计 心得体会 学习体会

课程设计的心得体会

刚一开始抽到题目,我一看觉得无从下手,由于那个时候很多课都还在进行着,也就是抽空思考一下思路,也到图书馆中借了相关的书来参考,但没有进行很深入的研究。课程设计开始的时候,我开始思考我该如何去求解,确定了算法之后,就开始写程序,修改错误,调试,直至完成,在这一过程中,让我学会了很多东西。

在课程设计结束后,我对书本,也就是我们的教材的认识有了很大的提高。以前我觉得能看懂书上的知识,能写出算法就认为自己学的还可以。可是通过课程设计,通过我对书上知识的研究,我发现其实书上有很多东西是我没有领略到的。我的算法的核心思想就是图的深度优先搜索遍历,在用邻接表对图完成存储之后,我就开始仔细的看书上有关图的遍历的知识,包括深度优先搜索遍历和广度优先搜索遍历,就那么几页纸,我看了不知道多少遍。刚一开始看一下,觉得自己会了,然后做程序,遇到问题再拿书看,没看一次我对算法的理解就更进了一步。通过这次课程设计,让我明白了书上的知识看似是很有限的,但它蕴含的东西值得我们去花更多的时间去研究。学知识不能只学表面的知识,做出一个深度优先搜索遍历程序不等于你就掌握了深度优先搜索遍历算法,其他知识也是这样,其他科目的学习也同样是这样。学习要抓住知识的精髓。

在课程设计这两个星期中,让我明白了独立思考的重要性。一个东西只有经过自己的思考,自己明白了才是真的明白了,别人说的再明白不等于我明白。在思考的过程中,我发现对一个问题,你思考的月深入,可以挖掘的东西就越多。我做的题目是分酒问题:三个酒杯,一个能装8kg,一个能装5kg,一个能装3kg,8kg是空的,5kg和3kg是满的,不借助其他工具,最终分出两个4kg。看似无从下手,但经过思考之后我确立了用图来求解,但是怎样抽象成图,抽象成什么样的图,模型确立后,图有很多种存储结构,采用哪一种存储结构是最优的等等问题都要去思考。最终我确定采用邻接表作为存储结构,图的深度优先搜索遍历来求解。

独立思考很重要,跟别人交流也很重要。在我和别人交流的时候,开阔了我的思维空间,很多原先我没想到的东西一下子就蹦出来了,而且能填补我知识的空白。跟老师交流就更重要了,以老师的知识层面和对问题的见解,他的想法具有很强的针对性和可行性。做好程序后,在写实验报告的时候,我发现在写实验报告的过程中,我对我的算法有了更进一步的认识,因为我要写出来,写出来的实验报告不仅我自己能看明白,更关键的是别人能看明白。这样就要求我用简练的语言来描述我的算法,而且对我的语言组织能力也是一次考验。

总之,这次课程设计让我对数据结构有了更深的认识,不仅体现在知识上,还体现在对知识的认识、对学习的认识和对方法的认识。

第四篇:《数据结构与算法》课程设计的心得体会

课程设计的心得体会

在两周的学习和实践过程中,通过解决学生搭配问题这一实际问题,让我对循环队列有了更深的了解,对数据结构也产生了更加浓厚的兴趣,同时也是对我解决实际问题能力的一次提升。

记得王教授给我们上课时就要不断的通过走算法的方式,掌握所学习的数据结构、算法等,而上机则能进一步巩固自己所学的知识、提高自己的学习能力。在上机的同时也改正了自己对某些算法的错误使用,使自己能在通过程序解决问题时抓住关键算法,能够很好的够造出解决问题的数据结构、算法的设计思想和流程图,并用C语言描绘出关键算法。

首先对于这次的课程设计题目而言,主要是对队列这一知识点的运用。首先是对问题的分析,明白题目的具体要求,即将现实生活中的舞会搭配问题,用链队列这一数据结构描绘出来。用两个链队列boy和girl分别代表男生和女生,当播放每一首歌曲时,便可使两队各有一元素出队列,这样就可以模拟出搭配情况。同时,由于题目要求系统能模拟动态地显示出上述过程,所以就考虑调用一个延迟函数sleep(),使歌曲之间有一段时间间隔,即模拟了显示中的那一动态过程。其次便是在实现过程中遇到的具体细节问题,比如一开始设计了两个出对函数DeQueue(),让首元素结点出队,然后调用入队函数Add(),使其入队到队尾,但在测试时发现,如果输入的人数为2,那么在到第三首歌曲时程序便会终止;经过分析发现是这两个函数的调用,使数据出错,所以就将这两个出对函数用一个函数change()代替,这个函数能实现将首元素结点移到队尾的功能。这样不仅没有了之前的问题,而且使程序更加易懂。在这些细节方面的具体设计,是对个人分析问题、解决问题能力的一个很好的锻炼。通过这个过程的锻炼,不仅能对所学的知识点有很好的掌握,而且还是对个人能力的很好的训练。

其次,以前我对数据结构(C语言描述)的一些标准库函数不太了解,还有对函数调用的正确使用不够熟悉,还有对C语言中经常出现的错误也不了解,通过实践,使我在这几个方面的认识有所提高。让自己有一定的能力去改正一些常见的错误语法,很高兴这两周的学习让我对数据结构(C语言描述)有了新的认识,所以后在学习过程中,我会更加注视实践操作,使自己便好地学好计算机。在这次课程设计的实验中,我收获了许多知识,通过查找大量资料,请教老师,以及不懈的努力,也培养了独立思考、动手操作的能力。我也学会了许多学习和解决实际问题的方法,让我受益匪浅。课程设计对我来说,趣味性强,不仅锻炼能力,而且可以学到很多东西,在与老师和同学的交流过程中,互动学习,将知识融会贯通,也增强了我和同学之间的团队合作的能力。让我们知道只要努力,集中精力解决问题,一定会有收获的,过程也是很重要的。

在这次课程设计中我们要学会利用时间,在规定的时间内完成我们的任务,要逐渐养成用C语言编写程序的良好习惯。这些对我来说都是一种锻炼,一个知识积累的过程,一种能力的提高。要打好基础,才能用更好的办法,更简洁明了的程序解决实际问题,只有这样才能进一步的取得更好的成绩。我们会更加努力,努力的去弥补自己的缺点,发展自己的优点,去充实自己,只有在了解了自己的长短之后,我们会更加珍惜拥有的,更加努力的去完善它,增进它。

当然我现在的水平还是很有限,但我还会继续努力的,在解决实际问题时如果遇到了难题,我们要学会去查找大量的有关这方面的资料,还要借助于网络不断扩大自己的知识面和阅读量。这样也可以锻炼我们的自主学习能力和解决问题的能力,学到了许多以前没学到的东西。

在课程设计中的程序都比较复杂,所以需要我们要更加地细心,认真的完成每一步的操作,修改语法,按照老师的指导思想来完成。还记得一开始拿到题目时我们的一脸茫然,而现在是收获满满的自信,每个人都或多或少有所收获,也让我们对程序设计和算法有了进一步理解、认识。

第五篇:《数据结构与算法课程设计》任务书2014

2014/2015学年第一学期

《数据结构与算法课程设计》任务书

一、课程设计目的

数据结构与算法课程设计是《数据结构与算法》课程教学必不可缺的一个重要环节,它可加深学生对该课程所学内容的进一步的理解与巩固,是将计算机课程与实际问题相联接的关键步骤。通过课程设计,能够提高学生分析问题、解决问题,从而运用所学知识解决实际问题的能力,因而必须给予足够的重视。

2二、课程设计题目

2.1 棋盘覆盖

【间题描述】

在一个2k×2k 个方格组成的棋盘中,恰有一个方格与其它方格不同,称该方格为一特殊方格,且称该棋盘为一特殊棋盘。在棋盘覆盖问题中,要用图示的4种不同形态的L型骨牌覆盖给定的特殊棋盘上除特殊方格以外的所有方格,且任何2个L型骨牌不得重叠覆盖。

【基本要求】

(1)输入k以及特殊方格所在的行号dr和特殊方格的列号dc。

1(2)要求输出每一步用什么形态L型骨牌覆盖,覆盖后得到的棋盘图形。(3)如果输出的结果只是用矩阵表示则为良好,用图形表示则为优。【测试数据】 【实现提示】

使用分治策略,把棋盘划分成4个小棋盘,然后用一个L型骨牌覆盖将这4个小棋盘变为都具有特殊方格的棋盘。

2.2 Hanoi塔问题(*)

【问题描述】

设a,b,c是三个塔座。开始时,在塔座a上有一叠共n个圆盘,这些圆盘自下而上,由大到小地叠放在一起,各圆盘从小到大编号为1,2,„,n,要求将塔座a上的这一叠圆盘移到塔座b上,并仍按同样顺序叠置。在移动圆盘时应遵守以下移动规则:

规则(1)每次只能移动一个圆盘;

规则(2)任何时刻都部允许将较大的圆盘压在较小的圆盘之上;

规则(3)在满足移动规则(1)和(2)的前提下,可将圆盘移至a,b,c中任一塔座上。

【基本要求】

(1)设计出Hannoi塔游戏,供用户玩;(2)提供正确的搬运方法。【实现说明】

正确的搬运方法使用递归方法实现。【测试数据】

2.3 矩阵连乘问题

【问题描述】

给定n个矩阵{A1,A2,...,An},其中Ai和Ai1是可乘的,i=1,2,„,n-1。考察这n个矩阵的连乘积A1A2,...,An,通过加括号方式,找出矩阵乘积所需的最少计算量的方法。

【基本要求】

输入每个矩阵的行和列,要求输出最少计算量的矩阵乘积方法,如(A1(A2(A3A4)))。【实现说明】 使用动态规划方法。

2.4 多边形游戏(*)

【问题描述】

多边形游戏是一个单人玩的游戏,开始时有一个由n个顶点构成的多边形。每个顶点被赋予一个整数值,每条边被赋予一个运算符“+”或“*”。所有边依次用整数从1到n编号。

游戏第1步,将一条边删除。随后n-1步按以下方式操作:

选择一条边E及由E连接着的2个顶点v1和v2;

用一个新的顶点取代边E及用E连接着的2个顶点v1和v2,将由顶点v1和v2的整数值通过边E上的运算得到的结果赋予新顶点。

最后,所有边都被删除,游戏结束。游戏的得分就是所剩顶点上的整数值。【基本要求】

设计该游戏供用户玩;

对于给定的多边形,给出最高得分计算。【实现说明】 使用动态规划方法。

2.5 0-1背包问题

【问题描述】

给定n种物品和一背包。物品i的重量是wi,其价值为vi,背包的容量为c。问应如何选择装入背包种的物品,使得装入背包种物品的总价值最大。

【基本要求】

使用动态规划、回溯法以及分支界限三种方法实现。【测试数据】 【实现提示】

2.6 排序方法

【问题描述】

给定n个元素,要求对这n个元素进行排序。【基本要求】

使用多种排序方法,越多越好;

比较每种排序方法的时间复杂度和空间复杂度。【测试数据】 【实现提示】

2.7 哈夫曼编码译码器

【问题描述】

设计一个哈夫曼编码/译码系统,对一个文本文件中的字符进行哈夫曼编码,生成编码文件

(压缩文件,后缀名.cod);反过来,可将一个压缩文件译码还原为一个文本文件(.txt)。

【基本要求】

(1)输入一个待压缩的英文文本文件,统计文本文件中各字符的个数作为权值,生成哈夫曼树;

(2)将文本文件利用哈夫曼树进行编码,生成压缩文件(后缀名cod)(3)输入一个待解压的压缩文件名称,并利用相应的哈夫曼树将编码序列译码。【实现说明】

(1)在构造哈夫曼树时,可以利用不同的线性表存放二叉树:用顺序表、单链表、5 循环单链表、双向链表、循环双链表;

(2)在构造哈夫曼树时,可以利用优先队列存放二叉树:顺序队列、链队列(可以是单链表、双链表等,还可以用静态结构去实现),可以分别在入队列或出队列时实现优先级;

(3)二叉树本身也可以用静态数组模拟;(4)使用贪心算法

2.8 迷宫问题(*)

【问题描述】

设计一个迷宫并给出正确走法。如: *** *** *** *** *** *** *** 其中0表示可以走,1表示不能走,每一步只能向上下左右移动。【基本要求】

(1)给出迷宫的正确走法,包括没有解的情况;(2)要求界面友好。【测试数据】

【实现提示】 使用回溯的方法。

2.9 继续邮资问题

【问题描述】

假设某国家发行了n种不同面值的邮票,并且规定每张信封上最多只允许贴m张邮票。连续邮资问题要求对于给定的n和m的值,给出邮票面值的最佳设计,在1张信封上贴出从邮资1开始,增量为1的最大连续邮资区间。

【基本要求】

输入任意的m和n都能设计出最佳的方案,并给出连续邮资区间。【实现说明】 【测试数据】

2.10 图的m着色问题

【问题描述】

给定一个地图,要求给出该地图的最少着色方案 【基本要求】

(1)把地图以及最少着色的方案显示出来则为良好。(2)有友好的界面则为优 【实现说明】

2.11 猜数字游戏(*)

【问题描述】

孩子想1个由4种颜色组成的序列(4种颜色不一定完全不同)。每种颜色只能是6种颜色之一。方便起见,我们用数字1到6表示6种颜色。

计算机必须根据孩子的回答找出孩子所想的颜色序列。计算机在屏幕上显示一个序列,孩子用键盘回答以下两个问题:

猜对的颜色中位置不对的有几个? 猜对的颜色中位置对的有几个? 【基本要求】

编程使至多6次问答后猜出序列,如果办不到,至多10次问答后猜出序列。【实现说明】 【测试数据】

如孩子想的是4655 计算机猜想 颜色对位置错的数目 颜色和位置都对的数目 1234 1 0 5156 2 1 6165 1 1 5625 1 2 5653 1 2 8 4655 0 4 2.12 大整数计算器

【问题描述】

设计一个计算器实现两个任意长得整数的加、减、乘、除。【基本要求】

设计一个实现任意长的整数进行四则运算的演示程序,要求输入任意长的整数进行四则运算,都能得到精确的结果。

【实现说明】

2.13 查找搜索技术

【问题描述】

给定任意的数组,对于给定的数,查找是否在数组中,如果在,则返回给定数在数组的位置,不在则返回不在信息。

【基本要求】

(1)使用多种搜索方法,越多越好,其中二分搜索技术、线性时间选择是必须的;(2)比较每种排序方法的时间复杂度和空间复杂度。【实现说明】

2.14 Tom,Jerry和奶酪(*)

【问题描述】

猫Tom和鼠Jerry同住在一矩阵地窖中。猫要吃鼠,鼠要吃奶酪。地窖中有2种地砖:有洞砖与无洞砖。一个洞足以让鼠钻入,但猫不能。

以菜单形式完成以下任务:

随机地生成一个地窖,并给猫、鼠和奶酪安排一个位置。如: fffffffffffffff fppppppppppppCf fhfffffffffffpf fpppjhppppppppf fpffffffpffffff fppppppppppTppf fffffffffffffff 其中c表示猫,j表示鼠,h表示洞,f表示不能通行(2)鼠先行,猫后行。两者皆满足以下规定: 1)必须上、下、左或右移动 2)鼠必须走1步(穿过p或h)3)猫必须走1或2步(穿过p)

(3)当鼠吃到奶酪或猫抓到鼠时,游戏结束。【基本要求】 【实现说明】

2.15 布线问题

【问题描述】

印刷电路板将布线区域划分成n×m个方格阵列,精确的电路布线问题要求确定连接方格a的中点到方格b的中点的最短布线方案。在布线时,电路只能沿着直线或直角布线。为了避免线路相交,已布了线的方格做了封锁标记,其他线路不允许穿过被封锁的方格。

【基本要求】(1)解决题目的问题(2)提供友好的界面 【实现说明】 使用分支限界法。

2.16 魔方工具包(*)

【问题描述】

一个魔方是一个由3×3×3个小立方体组成的立方体。最初立方体的6个面分别涂上不同颜色,我们称之为“最初魔方”。魔方的每一面上的3×3个小立方体组成它的一层。

魔方所能见到的每一层(6个面)都能旋转90,180,220或360度。所有层的旋转轴都垂直于面且通过其中心。旋转的结果是另一个魔方,它的所有面的颜色都改变了。

现在我们用字符来代替颜色:U=上,D=下,F=前,B=后,L=左,R=右。任何一个序列的旋转都能表示成{U,R,F,B,L,D}中一些字符组成的字符串,其中每个字符表示它所 11 指定的面顺时针旋转90度。

【基本要求】

(1)编程完成以下3个任务(菜单形式),你可以假设任何输入的字串长度都<=35。你的算法能处理非法输入的情况,如: 输入 输出 L L LL LL LLL LLL LLLL “”(空串 LLLLL L LLRRRFFFFRLB LLLB HELLO “error”

(2)判断输入的2个字串的旋转结果是否相同。如 输入一 输入二 输出 RU UR no RRFFRRFFRRFFRRFF FFRRFFRR yes RRFFRRFFRRFFRRFF RRFFRRFF no(3)求出输入字符串至少须使用几次才能将魔方转回到“最初魔方”(一定大于0)输入 输出 L 4 12 DD 2 BULB 36 RUF 80 BLUFF 180 【实现说明】

2.17 图的建立与输出

【问题描述】

建立图的存储结构(图的类型可以是有向图、无向图、有向网、无向网,学生可以任选两种类型),能够输入图的顶点和边的信息,并存储到相应存储结构中,而后输出图的邻接矩阵。

【基本要求】

给出图的深度优先和广度优先遍历算法,并给出遍历过程的动态演示效果 【实现说明】

2.18 图的建立与输出

【问题描述】

建立图的存储结构(图的类型可以是有向图、无向图、有向网、无向网,学生可以任选两种类型),能够输入图的顶点和边的信息,并存储到相应存储结构中,而后输出 13 图的邻接矩阵。

【基本要求】

给出图的深度优先和广度优先遍历算法,并给出遍历过程的动态演示效果。【实现说明】

2.19 以队列实现的仿真技术预测理发馆的经营状况(*)

【问题描述】

理发馆一天的工作过程如下:

1)理发馆有N把理发椅,可同时为N位顾客进行理发。

2)理发师分三个等级(一级、二级、三级),对应不同的服务收费。3)当顾客进门时,需选择某级别理发师,只要该级别的理发师有空椅,则可立即坐下理发,否则需排队等候。

4)一旦该级别的理发师有顾客理发完离去,排在队头的顾客便可开始理发。5)若理发馆每天连续营业T分钟,求

(1)一天内顾客在理发馆内的平均逗留时间;(2)顾客排队等候理发的队列长度平均值;

(3)营业时间到点后仍需完成服务的收尾工作时间;(4)统计每天的营业额;

(5)统计每天不同级别理发师的创收。

【基本要求】

1)模拟理发馆一天的工作过程:必须采用事件驱动的离散模型(参考教科书3.5节离散事件模拟p65);

2)每个顾客到达和下一顾客到达时间的间隔应是随机的; 3)理发师编号、理发师级别和每天的营业时间由用户输入;

4)某顾客挑选某一个级别的理发师而不得时,选第一个队列排队等待 ;

5)每个顾客进门时将生成三个随机数:(1)durtime:进门顾客理发所需服务时间(简称:理发时间);(2)intertime:下一顾客将到达的时间间隔(简称:间隔时间);(3)select:服务选项。

6)服务收费:应包含服务时间和理发师级别两个因素。

7)除了输出统计的数据外,还需要显示理发馆的状态,可以采用文本方式(横向显示每张椅编号、理发师级别。纵向表示等待该理发师理发的排队长度)。【实现说明】

用户输入每位理发师编号、级别号和营业的时间,结合随机数进行测试。

2.20 防抄袭管理系统(*)

【问题描述】

对于给定的文档,如word文档,txt文档等,找出文档的相似度。【基本要求】

(1)要求找出给定的两个文档的相似度以及标出相似的地方(1:1);(2)要求找出给定的一个文档与给定的文件夹的所有文档的相似度,以及标出相似的地方(1:n)(3)要求找出给定的文件夹下面所有文档的相似度(n:n)。【实现说明】

给定相似文档进行测试。

2.21.设计一个停车场管理系统,模拟停车场的运作

设计要求:通过此程序具备以下功能:

1、要求以栈模拟停车场,以队列模拟车场 15 外的便道,按照从终端读入的输入数据序列进行模拟管理;

2、要求处理的数据元素包括三个数据项:汽车“到达”或“离去”信息、汽车牌照号码及到达或离去的时刻;

3、该系统完成以下功能:若是车辆到达,则输出汽车在停车场内或便道上的停车位置;若是车离去,则输出汽车在停车场内停留的时间和应交纳的费用(在便道上停留的时间不收费);

4、要求栈以顺序结构实现,队列以链表实现。

2.22. 赫夫曼编码

设计要求:自己找一篇不少于200个单词的英文文章,分析该文章中每一个字符的出现概率(包括标点符号,区分大小写),根据分析结果对文章中每一个字符进行赫夫曼编码,并将编码原则储于一个独立的文本文件中。最后,根据这个编码原则,将英文文章转换为01 串存储于一个文本文件中,再编写一个解码程序,将编码解码为原文件。如:英文文章为 aaabbc 则编码规则为 a-----0 b-----10 c-----11 英文文章将被转化为 000101011 2.23.并查集:检查网络

题目要求:给定一个计算机网络以及机器间的双向连线列表,每一条连线允许两端的计算机进行直接的文件传输,其他计算机间若存在一条连通路径,也可以进行间接的文件传输。请写出程序判断:任意指定两台计算机,它们之间是否可以进行文件传输? 输入要求:输入若干测试数据组成。对于每一组测试,第1行包含一个整数N(≤10000),即网络中计算机的总台数,因而每台计算机可用1到N之间的一个正整数表示。接下来的几行输入格式为I C1 C2或者 C或者C C1C2或者S,其中C1和C2是两台计算机的 16 序号,I表示在C1和C2间输入一条连线,C表示检查C1和C2间是否可以传输文件,S表示该组测试结束。

当N为0时,表示全部测试结束,不要对该数据做任何处理。

输出要求:对每一组C开头的测试,检查C1和C2间是否可以传输文件,若可以,则在一行中输出“yes”,否则输出“no”。

当读到S时,检查整个网络。若网络中任意两机器间都可以传输文件,则在一行中输出“The network is connected.”,否则输出“There are k components.”,其中k是网络中连通集的个数。

两组测试数据之间请输出一空行分隔。

2.24.教学计划编制问题(图的应用)

[问题描述] 大学的每个专业都要制定教学计划。假设任何专业都有固定的学习年限,每学年含两学期,每学期的时间长度和学分上限值均相等。每个专业开设的课程都是确定的,而且课程在开设时间的安排必须满足先修关系。每门课程有哪些先修课程是确定的,可以有任意多门,也可以没有。每门课恰好占一个学期。试在这样的前提下设计一个教学计划编制程序。[实现提示]

1、输入参数应包括:学期总数,一学期的学分上限,每门课的课程号(可以是固定占3位的字母数字串)、学分和直接先修课的课程号。

2、应允许用户指定下列两种编排策略之一:一是使学生在各学期中的学习负担尽量均匀;二是使课程尽可能地集中在前几个学期中。

3、若根据给定的条件问题无解,则报告适当的信息;否则将教学计划输出到用户指定的文件中。计划的表格格式可以自己设计。

4、可设学期总数不超过12,课程总数不超过100。如果输入的先修课程号不在该专业开设的课程序列中,则作为错误处理。

============================= 17 2.25.药品销售统计系统(排序应用)

【问题描述】

设计一系统,实现医药公司定期对销售各药品的记录进行统计,可按药品的编号、单价、销售量或销售额做出排名。【实现提示】

在本设计中,首先从数据文件中读出各药品的信息记录,存储在顺序表中。各药品的信息包括:药品编号、药名、药品单价、销出数量、销售额。药品编号共4位,采用字母和数字混合编号,如:A125,前一位为大写字母,后三位为数字,按药品编号进行排序时,可采用基数排序法。对各药品的单价、销售量或销售额进行排序时,可采用多种排序方法,如直接插入排序、冒泡排序、快速排序,直接选择排序等方法。在本设计中,对单价的排序采用冒泡排序法,对销售量的排序采用快速排序法,对销售额的排序采用堆排序法。

药品信息的元素类型定义: typedef struct node { char num[4];/*药品编号*/ char name[10];/*药品名称*/ float price;/*药品单价*/ int count;/*销售数量*/ float sale;/*本药品销售额*/ }DataType;存储药品信息的顺序表的定义: typedef struct { DataType r[MaxSize];int length;}SequenList;

2.26梯运行仿真程序

[问题描述] 办公大楼有若干层(例如,十层),每层有电梯,同时有步行楼梯;

全楼有若干部(例如,不多于10部)电梯同时供使用,电梯容量为24人,速度每上下一层需5秒,在某一层停下至少15秒。其运行状态可分:向上、向下、停止,当前乘客数,当前所在层数。它设有一个“按钮数组”,例如第五层的按钮按下,意味着有乘客在第5层到达目标层,等等。在楼的每一层,有电梯数,有按钮表示有人等待向上或向下,由若干人在等待,有若干电梯在本层停下,等等。

在大楼中(包括进出)的总人数不超过500 人,每个人站在电梯前有个目标层,他有一个最大的忍受等待时间,因为他可以选择电梯或是步行走楼梯,等等。

还有下面若干假设:在每个时间段要进大楼的人数在0~199 之间随机取值;

用电梯的每个人的目标层在1~10 之间取值;一个人在进电梯或改走楼梯之前的等待时间在180~360 秒范围内随机发生;一个人到达目标层后第二次再乘电梯中间的工作时间在400~6600 秒间随机取值。[基本要求] 编写一个程序,模拟办公大楼中全部电梯的工作过程。这个仿真程序可以用来监测系统运行情况,改善大楼管理,它也可以看成是一种游戏程序。

2.27国交通咨询模拟

[问题描述]

处于不同目的的旅客对交通工具有不同的要求。例如,因公出差的旅客希望在旅 途中的时间尽可能的短,出门旅游的游客则期望旅费尽可能省,而老年旅客则要求中转次数最少。编制一个全国城市间的交通咨询程序,为旅客提供最优决策的交通咨询。

[基本要求]

(1)提供对城市信息进行编辑(如:添加或删除)的功能;

(2)城市之间有两种交通工具:火车或飞机,提供对全国城市交通图和列车时刻表及飞机航班表进行编辑的功能。(信息的输入方式可以是文件输入和键盘输入两种方式)

(3)提供两种最优决策:最快到达和最省钱到达。(选作:旅途中转次数最少的最优决策)

(4)旅途中耗费的总时间应该包括中转站的等候时间。

(5)咨询以用户和计算机的对话方式进行。

a)由用户输入起始站、终点站、最优决策原则和交通工具;

b)输出信息:最快需要多长时间才能到达或者最少需要多少旅费才能到达,并详 细说明依次于何时乘坐哪一趟列车或哪一次班机到何地。

三、课程设计的基本要求

1.问题分析和任务定义。根据设计题目的要求,充分地分析和理解问题,明确问题要求做什么?(而不是怎么做?)限制条件是什么?

2.逻辑设计。对问题描述中涉及的操作对象定义相应的数据类型,并按照以数据结构为中心的原则划分模块,定义主程序模块和各抽象数据类型。逻辑设计的结果应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的功能说明),各个主要模块的算法,并画出模块之间的调用关系图。

3.详细设计。定义相应的存储结构并写出各函数的伪码算法。在这个过程中,要综合考虑系统功能,使得系统结构清晰、合理、简单和易于调试,抽象数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体。详细设计的结果是对数据结构和基本操作作出进一步的求精,20 写出数据存储结构的类型定义,写出函数形式的算法框架。

4.程序编码。把详细设计的结果进一步求精为程序设计语言程序。同时加入一些注解和断言,使程序中逻辑概念清楚。

5.程序调试与测试。采用自底向上,分模块进行,即先调试低层函数。能够熟练掌握调试工具的各种功能,设计测试数据确定疑点,通过修改程序来证实它或绕过它。调试正确后,认真整理源程序及其注释,形成格式和风格良好的源程序清单和结果。

6.结果分析。程序运行结果包括正确的输入及其输出结果和含有错误的输入及其输出结果。算法的时间、空间复杂性分析。

7.编写课程设计报告并提交相关内容

设计最终需提交的内容包括:

A)课程设计报告(1份,A4纸打印,同时包括一份电子版)报告要求版面清晰,格式规范,否则重新编写。报告内容要求包括:

(1)问题的概述、分析及研究意义;(2)数据结构的逻辑设计和物理存储设计;(3)重要算法的设计、流程描述或伪代码描述;

(4)数据结构的时空复杂性分析以及重要算法的复杂性分析;

(5)程序最终实现结果(包括重点结果界面的抓取,能过说明问题的重要实验结果数据的打印或其可视化结果等)。

(6)参考文献(如果需要)。

(7)附录部分附上关键数据结构的定义及关键算法的源代码。

B)完整的程序系统(电子方式提交)

能够对输入产生相应的输出,同时尽量的完成可视化演示。

该部分包括源代码和可执行文件两个部分(提交的时候需清楚的注明个人姓名,班级)。

C)源程序文档(电子方式提交)

源程序代码要求结构清晰、可读性好。应对源程序中的类说明(如果采用面向对象方法设计),函数说明,接口说明,关键变量说明等进行注释;源程序要进行适当的缩进编排。

D)答辩报告(编写Power Point答辩报告,电子方式提交)要求突出重点,思路清晰。同时就此报告准备答辩。

E)所有以电子方式提交的文件全部存在一个目录中,并对其进行压缩(用Winrar或Winzip均 21 可),压缩后的文件按规定格式进行命名,命名格式为:学号+姓名.rar(如060701014石海杭.rar)。8.每位同学只能选择一个题目并完成

四、评分标准

1、基本功能:

50分。

通过功能的实现情况、界面的完成情况、软件的实现情况进行评分。

2、设计报告及使用说明书: 20分 按照报告的要求进行评分。

3、回答问题:

4、平时考勤:

5、核分标准:

15分 15分 100分

(90~100为优、80~89为良、70~79为中、60~69为及格、,60以下为不及格)

五、参考书目

严蔚敏.《数据结构》(C语言版).清华大学出版社 刘玉龙.《数据结构与算法》.电子工业出版社.严蔚敏等《数据结构题集》(C语言版).清华大学出版社

徐孝凯.数据结构实用教程(C/C++描述).北京:清华大学出版社.陈慧南.数据结构(使用C++语言描述).南京:东南大学出版社.殷人昆, 陶永雷, 谢若阳等.数据结构(用面向对象方法与C++描述).北京:清华大学出版社.22

下载数据结构与算法课程设计题目[范文大全]word格式文档
下载数据结构与算法课程设计题目[范文大全].doc
将本文档下载到自己电脑,方便修改和收藏,请勿使用迅雷等下载。
点此处下载文档

文档为doc格式


声明:本文内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:645879355@qq.com 进行举报,并提供相关证据,工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。

相关范文推荐

    数据结构与算法 课程设计的心得体会

    课程设计的心得体会 这次课程设计抽到了一个不太好的题目,是“国王与骑士”问题。乍一看是完全没有头绪,甚至连题目要求都感觉有些晦涩难懂。虽然很羡慕那些抽到了简单题目的......

    数据结构与算法课程设计 心得体会 学习体会

    课程设计的心得体会 陈康荫080401200708级计科系计本(2)班完成了这次的二元多项式加减运算问题的课程设计后,我的心得体会很多,细细梳理一下,有以下几点:1、程序的编写中的语法错......

    数据结构与算法课程设计 心得体会 学习体会

    课程设计的心得体会 每一次课程设计,都有不一样的感受,通过课程设计,对我而言,得到的不仅仅是知识,更是获得知识的方法,这显得更加的重要。 本次课程设计,我的设计题目是校园导游程......

    数据结构课程设计题目

    数据结构课程设计 一、教学目的和要求 课程设计是加强学生实践能力的一个强有力手段。综合课设1主要针对数据结构和c/c++语言开展的实践性课程。要求学生掌握数据结构的应用......

    数据结构课程设计题目

    一、表达式求值(2-3人)  问题描述:从键盘上输入中缀算数表达式,计算出表达式的值。  基本要求: 1. 程序对所输入的表达式做简单的判断,如果表达式有错,能给出适当的提示。 2. 能处......

    数据结构课程设计题目

    数据结构课程设计 一、考核方法和内容 根据课程设计过程中学生的学生态度、题目完成情况、课程设计报告书的质量和回答问题的情况等按照10%、40%、30%、20%加权综合打分。成......

    数据结构课程设计题目.

    数据结构课程设计题目 1.运动会分数统计(限1 人完成) 任务:参加运动会有n个学校,学校编号为1……n。比赛分成m个男子项目,和w个女子项目。项目编号为男子1……m,女子m+1……m+w。......

    数据结构课程设计题目

    数据结构课程设计题目 以下8个题目任选其一。 1.排序算法比较 利用随机函数产生30000个随机整数,利用插入排序、起泡排序、选择排序、快速排序、堆排序、归并排序等排序方法进......