数据结构课程设计任务书
- 格式:doc
- 大小:77.00 KB
- 文档页数:11
上海电力学院课程设计(大型作业)任务书(20 /20 学年第一学期)课程编号课程名称数据结构(JAVA)院(系)专业班级时间任课老师一、课程设计的性质、目的与作用数据结构是计算机专业的核心课程,是计算机科学的算法理论基础和软件设计的技术基础;数据结构是实践性很强的课程。
课程设计是加强学生实践能力的一个强有力手段。
本课程属于集中实践教学环节,是在学习JA V A和数据结构后开设的。
要求学生掌握数据结构的应用、算法的编写、JA V A程序的实现并上机调试的基本方法。
课程设计要求学生在完成程序设计的同时能够写出比较规范的设计报告。
严格实施课程设计这一环节,对于学生基本程序设计索养的培养和软件工作者工作作风的训练,将起到显著的促进作用。
二、课程设计的具体内容选题原则是数据结构算法实现及在具体问题中的应用。
要求通过课程设计实践,在数据结构的表示、数据结构的选择及应用、算法设计与实现等方面加深对数据结构课程基本内容的理解和综合运用能力的提高。
参考选题及要求说明如下,选题次序的规则由各班级约定,带**题较难,最高评分可达“优”,其他题目的最高评分为“良”,要求一人一题,不重复。
1.车厢调度问题描述:假设停在铁路L周度站入日处的车厢序列的编号一次为1,2,3,…,n。
设汁一个程序,求出所有可能由此输出的长度为n的车厢序列。
2.**学生运动会功能:学生运动会成绩数据库系统记录某校运动会上全部运动项目,各系获得的分数及排名的情况,包括50、100、200、400、1500米,跳高,跳远,标枪,铅球铁饼等。
进入系统后可以输入和修改某个项日的结果情况,可以按各系院编号输出总分:按总分排序;按男团体总分排序;按系院编号查询;按项目编号查询;按女团体总分排序。
要求:(1)建立一个文件,包括某个系,5个项目的得分情况,能对文件中的信息进行扩充(追加),修改和删除;(2)完成对多个系,多个项目的得分排序,以及完成系统查询功能。
《数据结构》课程设计任务书一、设计题目1、约瑟夫环2、集合的并、交和差运算3、一元稀疏多项式计算器4、停车场管理5、车厢调度6、文学研究助手7、哈夫曼编/译码器8、图遍历的演示9、最小生成树问题10、哈希表设计二、设计目的数据结构课程设计是计算机专业的集中实践性环节之一,是学习完《数据结构》课程后进行的一次全面的综合练习。
其目的在于加深对数据结构的理解和掌握,使学生更好地掌握数据结构的特点、存储表示、运算方法及其应用,训练学生选用合适的数据结构编写质量高、风格好的应用程序的能力。
三、设计任务每班每人按照学号的顺序依次选择1-10号设计题目,独立完成课题。
(即1、11、21号学生完成1号课题,2、12、22号学生完成2号题,以此类推)四、时间安排五、设计内容1. 约瑟夫环【问题描述】约瑟夫(Joseph) 问题的一种描述是:编号为1,2,… ,n的n个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。
一开始任选一个正整数作为报数上限值m,从第一个人开始按顺时针方向自1开始顺序报数,报到m时停止报数。
报m的人出列,将他的密码作为新的m值,从他在顺时针方向上的下一个人开始重新从1报数,如此下去,直至所有人全部出列为止。
试设计一个程序求出出列顺序。
【基本要求】利用单向循环链表存储结构模拟此过程,按照出列的顺序印出各人的编号。
【测试数据】m的初值为20;n=7,7 个人的密码依次为:3,1,7,2,4,8,4,首先m值为6( 正确的出列顺序应为6,1,4,7,2,3,5) 。
【实现提示】程序运行后,首先要求用户指定初始报数上限值,然后读取各人的密码。
可设n≤30。
此题所用的循环链表中不需要“头结点”,请注意空表和非空表的界限。
【选作内容】向上述程序中添加在顺序结构上实现的部分。
2. 集合的并、交和差运算【问题描述】编制一个能演示执行集合的并、交和差运算的程序。
【基本要求】(1) 集合的元素限定为小写字母字符[‘a’..’z’] 。
《数据结构》课程设计任务书计算机与通信学院2018-5湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院湖南工业大学计算机与通信学院湖南工业大学计算机与通信学院湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书湖南工业大学计算机与通信学院《数据结构》课程设计任务书。
数据结构课程设计(5篇)第一篇:数据结构课程设计课程设计说明书设计名称:数据结构课程设计题目:设计五:二叉树的相关操作学生姓名:专业:计算机科学与技术班级:学号:指导教师:日期: 2012 年 3 月 5 日课程设计任务书计算机科学与技术专业年级班一、设计题目设计五二叉树的相关操作二、主要内容建立二叉树,并对树进行相关操作。
三、具体要求1)利用完全二叉树的性质建立一棵二叉树。
(层数不小于4层)2)统计树叶子结点的个数。
3)求二叉树的深度。
4)能够输出用前序,中序,后序对二叉树进行遍历的遍历序列。
四、进度安排依照教学计划,课程设计时间为:2周。
本设计要求按照软件工程的基本过程完成设计。
建议将时间分为三个阶段:第一阶段,根据题目要求,确定系统的总体设计方案:即系统包括哪些功能模块,每个模块的实现算法,并画出相应的流程图.同时编写相应的设计文档;第二阶段,根据流程图编写程序代码并调试,再将调试通过的各个子模块进行集成调试;第三阶段,归纳文档资料,按要求填写在《课程设计说明书》上,并参加答辩。
三个阶段时间分配的大概比例是:35: 45: 20。
五、完成后应上交的材料本课程设计要求按照学校有关规范的要求完成,在课程设计完成后需要提交的成果和有关文档资料包括课程设计的说明书,课程设计有关源程序及可运行程序(含运行环境)。
其中课程设计说明书的格式按学校规范(见附件),其内容不能过于简单,必须包括的内容有:1、课程设计的基本思想,系统的总功能和各子模块的功能说明;2、课程设计有关算法的描述,并画出有关算法流程图;3、源程序中核心代码的说明。
4、本课程设计的个人总结,主要包括以下内容:(1)课程设计中遇到的主要问题和解决方法;(2)你的创新和得意之处;(3)设计中存在的不足及改进的设想;(4)本次课程设计的感想和心得体会。
5、源代码要求在关键的位置有注释,增加程序的可读性。
程序结构和变量等命名必须符合有关软件开发的技术规范(参见有关文献)。
平顶山工学院《数据结构》课程设计任务书班级0814101/2专业计算机科学与技术课程名称数据结构指导教师张芳芳、杨斌、张延红计算机科学与工程系2018年2月《数据结构》课程设计任务书一、设计时间及地点1、设计时间:第1周2、设计地点:计算机系机房205、212二、设计目的和要求数据结构课程设计是在学完数据结构课程之后的实践教案环节。
该实践教案是软件设计的综合训练,包括问题分析、总体结构设计、用户界面设计、程序设计基本技能和技巧。
要求学生在设计中逐步提高程序设计能力,培养科学的软件工作方法。
学生通过数据结构课程设计在下述各方面得到锻炼:1、能根据实际问题的具体情况,结合数据结构课程中的基本理论和基本算法,正确分析出数据的逻辑结构,合理地选择相应的存储结构,并能设计出解决问题的有效算法。
2、提高程序设计和调试能力。
学生通过上机实习,验证自己设计的算法的正确性。
学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改。
3、培养算法分析能力。
分析所设计算法的时间复杂度和空间复杂度,进一步提高程序设计水平。
学生认真主动完成课程设计的要求,发挥自主学习的能力,充分利用时间,安排好课程设计,并在课程设计过程中不断检测自己的计划完成情况,及时向教师汇报。
三、设计题目和内容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)可以按学校编号查询学校某个工程的情况;可以按工程编号查询取得前三或前五名的学校。
数据结构课程设计任务书一、课程设计的基本要求1.认真查阅资料,独立完成设计任务。
2.独立思考,培养综合分析问题解决问题和调试程序的能力。
3.按时完成课程设计,写出课程设计报告。
二、课程设计的内容题目一:线性表和队列实现航空客运订票系统。
【问题描述】航空客运订票的业务活动包括;查询航线、客票预订和办理退票等。
试设计一个航空客 运订票系统,以使上述业务可以借助计算机来完成。
【基本要求】(1)每条航线所涉及的信息有:终点站名、航班名、飞机号、飞行周日(星期几)、乘员定额、余票量、已订票的客户名单(包括姓名、订票量、舱位等级1,2 或3)以及等候替补的客户名单(包括姓名、所需票量);(2)作为示意系统,全部数据可以只放在内存中;(3)系统能实现的操作和功能如下:①查询航线:根据旅客提出的终点站名输出下列信息:航班号、飞机号、星期几飞行,最近一天航班的日期和余票额;②承办订票业务:根据客户提出的要求(航班号、订票数额)查询该航班票额情况,若尚有余票,则为客户办理订票手续,输出座位号;若已满员或余票额少于订票额,则 需重新询问客户要求。
若需要,可登记排队候补;③承办退票业务:根据客户提供的情况(日期、航班),为客户办理退票手续,然后查询该航班是否有人排队候补,首先询问排在第一的客户,若所退票额能满足客户的要 求,则为客户办理订票手续,否则依次询问其他排队候补的客户。
【实现提示】两个客户名单可分别由线性表和队列实现。
为查找方便,已订票客户的线性表应按客户姓名有序,并且为了插入和删除方便,应以链表作为存储结构。
由于预约人数无法预计,队列也应以链表作存储结构。
整个系统需汇总各条航线的情况登录在一张线性表上,由于航线 基本不变,可采用顺序存储结构,并按航班有序或按终点站名有序。
每条航线是这张表上的一个记录,包含上述8个域、其中乘员名单域为指向乘员名单链表的头指针,等候替补的客户名单域为分别指向队头和队尾的指针。
【选作内容】当客户订票要求不能满足时,系统可向客户提供到达同一目的地的其他航线情况。
《数据结构》课程设计任务书《数据结构》课程设计任务说明一、题目及选题规定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.按要求完成课设内容,课设报告要求文字和图工整、思路清楚、正确。
3.应用程序应具有一定的可用性。
凡用户输入时,给出足够的提示信息。
格式明显易懂,使用户感到方便使用。
4.程序具有一定的健壮性,不会因为用户的输入错误引起程序运行错误而中断执行:对输入值的类型、大小范围、字符串的长度等,进行正确性检查,对不合法的输入值给出出错信息,指出错误类型,等待重新输入。
三、课程设计报告内容课程设计报告中应包括封面、内容摘要、关键词、目录、正文、参考文献、附录、致谢等几部分。
正文包括绪论、需求分析、概要设计、详细设计、调试分析、测试结果、总结等。
具体:(1)封面包括设计题目、所在系、专业、班级、姓名、指导教师姓名和完成日期。
(2)内容摘要应扼要叙述课设的主要内容、特点,文字要精练,是一篇具有独立性和完整性的短文,包括基本研究方法、理论与实际意义。
关键词是供检索用的主题词条,应采用能够覆盖课程设计报告主要内容的通用专业术语。
(3)绪论一般作为第1章,综述课程设计选题的目的、背景和意义,所要研究的主要内容。
(4)需求分析陈述说明课程设计的任务。
明确规定:输入/输出形式和输出值的范围;程序所能达到的功能;测试的数据:包括正确的输入和错误的输入及其相应的输出结果。
(5)概要设计包括设计思想、实现方法、系统中主要函数及各函数间的关系描述。
(6)详细设计包括实现概要设计中定义的所有数据类型,对每个操作需要写出伪代码算法。
(7)调试分析包括:调试过程中遇到的问题,如何解决的以及对设计实现的回顾讨论和分析;对算法的分析和改进设想;经验和体会等。
2013/2014学年第2学期数据结构课程设计任务书指导教师:丁柏秀、赵洁红班级:软件1241班地点:9411一、课程设计目的《数据结构》是计算机专业的专业基础课,是一门实践性很强的课程,学生通过理论学习,并在完成每章后面的一些小程序后,理解了数据结构的基本概念,掌握了一些基本的编程技术,但仅有这一方面的训练还是很不够的。
全面、严格的训练,是学好该课程的一个不可缺少的组成部分。
课程设计对于提高学生用学到的书本知识解决实际问题,培养实际工作所需要的动手能力,对于提高以科学理论和工程上的技术,规范地开发大型、复杂、高质量的应用软件和系统软件具有关键性作用。
通过课程设计的实践,学生可以在程序设计方法、上机操作等基本技能和科学作风方面受到比较系统和严格的训练。
二、课程设计内容(包括技术指标)《数据结构课程设计》则要培养、训练学生选用合适的数据结构并运用程序设计语言(C/C++)编写质量高的应用程序。
并建立初步评价算法程序的能力。
为编译技术、操作系统、数据库及算法设计与分析等后继课程的学习以及为应用软件特别是非数值应用软件的开发打下良好的理论基础和实践基础重点和难点:1. 针对具体问题如何选择或设计合适的数据结构;2. 如何根据一定的存储策略实现数据的存储表示;3. 基于上述数据结构设计并实现完成具体要求的算法;4. 对算法的时间性能进行分析。
手段和方法:1. 给出具体示例和设计方法示例;2. 上机前的预习及检查;3. 分组讨论,团队合作;4. 每天上机后总结。
三、课程设计题目、内容及学时分配具体设计题目:(每个同学用自己的学号除以23取余,对应的序号就是的设计题目序号,其中学号23对应第23题)1、通讯录的制作设计目的:用《数据结构》中的双向链表作数据结构,结合语言基本知识。
编写一个通讯录管理系统。
以把所学数据结构知识应用到实际软件开发中去。
设计内容:本系统应完成一下几方面的功能:输入信息—— enter();显示信息——— display( );查找以姓名作为关键字———search( );删除信息——— delete( );存盘——— save ( );装入——— load( ) ;设计要求:每条信息至包含:姓名(NAME )街道(STREET)城市(CITY)邮编(EIP)国家( STATE)几项作为一个完整的系统,应具有友好的界面和较强的容错能力上机能正常运行,并写出课程设计报告2、全国交通咨询模拟问题描述:处于不同目的的旅客对交通工具有不同的要求。
例如,因公出差的旅客希望在旅途中的时间尽可能的短,出门旅游的游客则期望旅费尽可能省,而老年旅客则要求中转次数最少。
编制一个全国城市间的交通咨询程序,为旅客提供两种或三种最优决策的交通咨询。
设计要求:•提供对城市信息进行编辑(如:添加或删除)的功能。
•城市之间有两种交通工具:火车和飞机。
提供对列车时刻表和飞机航班进行编辑(增设或删除)的功能。
•提供两种最优决策:最快到达和最省钱到达。
全程只考虑一种交通工具。
•旅途中耗费的总时间应该包括中转站的等候时间。
•咨询以用户和计算机的对话方式进行。
由拥护输入起始站、终点站、最优决策原则和交通工具,输出信息:最快需要多长时间才能到达或者最少需要多少旅费才能到达,并详细说明依次于何时乘坐哪一趟列车或哪一次班机到何地。
测试数据:自行设计列车时刻表和飞机航班。
实现提示:( 1)对全国城市交通图和列车时刻表及飞机航班表进行编辑,应该提供文件形式输入和键盘输入两种方式。
飞机航班表的信息应包括:起始站的出发时间、终点站的到达时间和票价;列车时刻表则需根据交通图给出各个路段的详细信息,( 2)以邻接表作交通图的存储结构,表示边的结构内除含有邻接点的信息外,还应包括交通工具、路程中耗费的时间和花费以及出发和到达的时间等多种属性。
选作内容:增加旅途中转次数最少的最优决策。
3、运动会分数统计任务:参加运动会有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、局部非法数据。
进行程序测试,以保证程序的稳定。
测试数据及测试结果请在上交的资料中写明;4、一元多项式计算任务:能够按照指数降序排列建立并输出多项式;能够完成两个多项式的相加减、相乘,并将结果输入;在上交资料中请写明:存储结构、多项式相加的基本过程的算法(可以使用程序流程图)、源程序、测试数据和结果、算法的时间复杂度、另外可以提出算法的改进方法;5、订票系统任务:通过此系统可以实现如下功能:录入:可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)查询:可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况;订票:(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班;退票:可退票,退票后修改相关数据文件;客户资料有姓名,证件号,订票数量及航班情况,订单要有编号。
修改航班信息:当航班信息改变可以修改航班数据文件要求:根据以上功能说明,设计航班信息,订票信息的存储结构,设计程序完成功能;6、文章编辑功能要求:输入一页文字,程序可以统计出文字、数字、空格的个数。
(1)静态存储一页文章,每行最多不超过80个字符,共N行;要求分别统计出其中英文字母数和空格数及整篇文章总字数;统计某一字符串在文章中出现的次数,并输出该次数;删除某一子串,并将后面的字符前移。
(2)存储结构使用线性表,分别用几个子函数实现相应的功能;(3)输入数据的形式和范围:可以输入大写、小写的英文字母、任何数字及标点符号。
(4)输出形式:1)分行输出用户输入的各行字符;2)分4行输出"全部字母数"、"数字个数"、"空格个数"、"文章总字数"输出删除某一字符串后的文章。
7、设计题目joseph环任务:编号是1,2,……,n的n个人按照顺时针方向围坐一圈,每个人只有一个密码(正整数)。
一开始任选一个正整数作为报数上限值m,从第一个仍开始顺时针方向自1开始顺序报数,报到m时停止报数。
报m的人出列,将他的密码作为新的m值,从他在顺时针方向的下一个人开始重新从1报数,如此下去,直到所有人全部出列为止。
设计一个程序来求出出列顺序。
要求:利用单向循环链表存储结构模拟此过程,按照出列的顺序输出各个人的编号。
8、Channel AllocationWhen a radio station is broadcasting over a very large area, repeaters are used to retransmit the signal so that every receiver has a strong signal. However, the channels used by each repeater must be carefully chosen so that nearby repeaters do not interfere with one another. This condition is satisfied if adjacent repeaters use different channels. Since the radio frequency spectrum is a precious resource, the number of channels required by a given network of repeaters should be minimised. You have to write a program that reads in a description of a repeater network and determines the minimum number of channels required.INPUTThe input consists of a number of maps of repeater networks. Each map begins with a line containing the number of repeaters. This is between 1 and 26, and the repeaters are referred to by consecutive upper-case letters of the alphabet starting with A. For example, ten repeaters would have the names A,B,C,...,I and J. A network with zero repeaters indicates the end of input. Following the number of repeaters is a list of adjacency relationships. Each line has the form: A:BCDH which indicates that the repeaters B, C, D and H are adjacent to the repeater A. The first line describes those adjacent to repeater A, the second those adjacent to B, and so on for all of the repeaters. If a repeater is not adjacent to any other, its line has the form A: The repeaters are listed in alphabetical order. Note that the adjacency is a symmetric relationship; if A is adjacent to B, then B is necessarily adjacent to A. Also, since the repeaters lie in a plane, the graph formed by connecting adjacent repeaters does not have any line segments that cross.OUTPUTFor each map (except the final one with no repeaters), print a line containing the minumum number of channels needed so that no adjacent channels interfere. The sample output shows the format of this line. Take care that channels is in the singular form when only one channel is required.SAMPLE INPUT2A:B:4A:BCB:ACDC:ABDD:BC4A:BCDB:ACDC:ABDD:ABCSAMPLE OUTPUT1 channel needed.3 channels needed.4 channels needed.提示:此题中借助图论中四色猜想问题解决 repeater :中继器,网络设备 Channel 信道9、求回文串Given a character string, determine if it is a palindrome. A palindrome is a word or phrase that reads the same forwards and backwards, like mom or noon. For our purposes, palindromes are case insensitive, so Bob and Anna are palindromes. Also, we are only concerned with alphabetic characters, so punctuation and other non-alphabetic characters may be ignored.InputA positive integer denoting the number of cases. Each case will consist of a string of characters, including blanks and non-alphabetic characters. Each case will be on a separate line.OutputThe sentence “<string> is a palindrome.” if the word is a palindrome, or the sentence “<string> is not a palindrome.” if it is not, where <string> is the input string.5Allen AldaasdffdsaRace carGo hang a salami, I'm a lasagna hog!HannaSample OutputAllen Alda is not a palindrome.asdffdsa is a palindrome.Race car is a palindrome.Go hang a salami, I'm a lasagna hog! is a palindrome.Hanna is not a palindrome.回文串的判断,利用栈10、Degrees of separationFind out how many people separate one person from another.The number of people will be no more than 20.InputA positive integer representing the number of people in the following list. Each line in the list contains the name of a person, followed by the number of people that person knows, followed by the names of those people. Following this list is a positive integer denoting the number of cases. Each case consists of a starting name and a goal name. Names will not contain any blanks or non-alphabetic characters. OutputThe phrase “<start> has no connection to <goal>.” or the phrase “<start> is separated from <goal> by <num> degrees.”, where <start> is the starting name, <goal> is the goal name, and <num> is the number of degrees of separation between the two. Sample Input5Bob 3 Tom John JimSam 2 Bob JohnJohn 2 Tom BobTom 1 SamJim 03Jim SamSam JohnJohn SamJim has no connection to Sam.Sam is separated from John by 0 degrees.John is separated from Sam by 1 degrees.提示:有向图求路径长度11、MarriageNow, a lot of persons holding their marriages together are in fashion. One day, a lot of people hold their marriages together. They are all happy, so they want to play a game. They stand in two lines, one faces one. The men are in one line, the women are in another. They stand arbitrarily. Then, there will be some red lines to link each couple. So can you calculate how many pairs of the red lines are overlaped (交叉).InputThere are several cases in the input, each case begin with a postive integer N(N<=300000), which means there are N couples, 0 means the end of the file. The following 2 lines each consists of N integers. Each integer represents a couple. The first line are men, the second are women.OutputFor each case output how many pairs of lines are overlaped.Sample Input31 2 33 2 131 2 31 2 3Sample Output3利用数组实现此题。