




已阅读5页,还剩21页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
算法设计综合实训题目0逆序数字(借助栈)编写一个函数,接收一个4位整数值,返回这个数中数字逆序后的结果值。例如,给定数7631,函数返回1367输入第一行一个正整数T(T10),表示有T组测试数据以下T行,每行一个非负的整数N。输出共T行,对于每组输入数据输出一行,即数字逆序后的结果值。样本输入3763110185158样本输出1367810185151人见人爱AB这个题目的A和B不是简单的整数,而是两个时间,A和B都是由3个整数组成,分别表示时分秒,比如,假设A为344556,就表示A所表示的时间是34小时45分钟56秒。输入输入数据有多行组成,首先是一个整数N,表示测试实例的个数,然后是N行数据,每行有6个整数AH,AM,AS,BH,BM,BS,分别表示时间A和B所对应的时分秒。题目保证所有的数据合法。输出对于每个测试实例,输出AB,每个输出结果也是由时分秒3部分组成,同时也要满足时间的规则(即分和秒的取值范围在059),每个输出占一行,并且所有的部分都可以用32位整数表示。样本输入2123456344556122334样本输出579479302敲七【问题描述】输出7和7的倍数,还有包含7的数字例如(17,27,3770,71,72,73)【要求】【数据输入】一个整数N。N不大于30000【数据输出】从小到大排列的不大于N的与7有关的数字,每行一个。【样例输入】20【样例输出】714173统计同成绩学生人数问题【问题描述】读入N名学生的成绩,将获得某一给定分数的学生人数输出。【要求】【数据输入】测试输入包含若干测试用例,每个测试用例的格式为第1行N第2行N名学生的成绩,相邻两数字用一个空格间隔。第3行给定分数当读到N0时输入结束。其中N不超过1000,成绩分数为(包含)0到100之间的一个整数。【数据输出】对每个测试用例,将获得给定分数的学生人数输出。【样例输出】38060906028566056075905575750【样例输出】1024高斯日记大数学家高斯有个好习惯无论如何都要记日记。他的日记有个与众不同的地方,他从不注明年月日,而是用一个整数代替,比如4210。后来人们知道,那个整数就是日期,它表示那一天是高斯出生后的第几天。这或许也是个好习惯,它时时刻刻提醒着主人日子又过去一天,还有多少时光可以用于浪费呢高斯出生于1777年4月30日。在高斯发现的一个重要定理的日记上标注着5343,因此可算出那天是1791年12月15日。高斯获得博士学位的那天日记上标着8113请你算出高斯获得博士学位的年月日。5牛的繁殖问题有位科学家曾出了这样一道数学题有一头母牛,它每年年初要生一头小母牛;每头小母牛从第四个年头起,每年年初也要生一头小母牛。按此规律,若无牛死亡,第20个年头上共有多少头母牛。6最少钱币数问题【问题描述】这是一个古老而又经典的问题。用给定的几种钱币凑成某个钱数,一般而言有多种方式。例如给定了6种钱币面值为2、5、10、20、50、100,用来凑15元,可以用5个2元、1个5元,或者3个5元,或者1个5元、1个10元,等等。显然,最少需要2个钱币才能凑成15元。你的任务就是,给定若干个互不相同的钱币面值,编程计算,最少需要多少个钱币才能凑成某个给出的钱数。【要求】(代码需加注释)【数据输入】输入可以有多个测试用例。每个测试用例的第一行是待凑的钱数值M(1M2000,整数),接着的一行中,第一个整数K(1K10)表示币种个数,随后是K个互不相同的钱币面值KI1KI1000。输入M0时结束。【数据输出】每个测试用例输出一行,即凑成钱数值M最少需要的钱币个数。如果凑钱失败,输出“IMPOSSIBLE”。你可以假设,每种待凑钱币的数量是无限多的。【样例输入】156251020501001120【样例输出】2IMPOSSIBLE7运动会分数统计【任务描述】参加运动会有N个学校,学校编号为1N。比赛分成M个男子项目,和W个女子项目。项目编号为男子1M,女子M1MW。不同的项目取前五名或前三名积分;取前五名的得分分别为7、5、3、2、1,前三名的得分分别为5、3、2;哪些取前五名或前三名由学生自己设定。(M20,N20)【功能要求】1)可以输入各个项目的前三名或前五名的成绩。2)能统计各学校总分。3)可以按学校编号或名称、学校总分、男女团体总分排序输出。4)可以按学校编号查询学校某个项目的情况;可以按项目编号查询取得前三或前五名的学校。5)数据存入文件并能随时查询。6)规定输入数据形式和范围可以输入学校的名称,运动项目的名称。【输出形式】有合理的提示,各学校分数为整型。【界面要求】有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。【存储结构】学生自己根据系统功能要求自己设计,但是要求运动会的相关数据要存储在数据文件中。(数据文件的数据读写方法等相关内容在C/C语言程序设计的书上,请自学解决)请在最后的上交资料中指明你用到的存储结构。【测试数据】要求使用(1)全部合法数据;(2)整体非法数据;(3)局部非法数据分别进行程序测试,以保证程序的稳定。测试数据及测试结果请在上交的资料中写明。8飞机订票系统任务通过此系统可以实现如下功能1)录入可以录入航班情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)。2)查询可以查询某个航线的情况(如,输入航班号,查询起降时间,起飞抵达城市,航班票价,票价折扣,确定航班是否满仓);可以输入起飞抵达城市,查询飞机航班情况。3)订票(订票情况可以存在一个数据文件中,结构自己设定)可以订票,如果该航班已经无票,可以提供相关可选择航班。4)退票可退票,退票后修改相关数据文件。客户资料有姓名、证件号、订票数量及航班情况,订单要有编号。5)修改航班信息当航班信息改变时,可以修改航班数据文件。要求根据以上功能说明,设计航班信息、订票信息的存储结构,设计程序完成功能。9文章编辑功能输入一页文字,程序可以统计出文字、数字、空格的个数。静态存储一页文章,每行最多不超过80个字符,共N行;要求(1)分别统计出其中英文字母数和空格数及整篇文章总字数;(2)统计某一字符串在文章中出现的次数,并输出该次数;(3)删除某一子串,并将后面的字符前移。存储结构使用线性表,分别用几个子函数实现相应的功能。输入数据的形式和范围可以输入大写、小写的英文字母、任何数字及标点符号。输出形式(1)分行输出用户输入的各行字符;(2)分4行输出“全部字母数“、“数字个数“、“空格个数“、“文章总字数“;(3)输出删除某一字符串后的文章。10宿舍管理查询软件问题描述为宿舍管理人员编写一个宿舍管理查询软件。程序设计要求(1)采用交互工作方式。(2)建立数据文件,数据文件按关键字(姓名、学号、房号)进行排序(冒泡、选择、插入排序等任选一种)。(3)查询菜单(用二分查找实现以下操作)按姓名查询、按学号查询、按房号查询。(4)打印任一查询结果(可以连续操作)。11学校超市选址问题(带权有向图的中心点)设计要求对于某一学校超市,其他各单位到其该超市的距离不同,同时各单位人员去超市的频度也不同。请为超市选址,要求实现总体最优。12教学计划编制问题针对学院的计算机系本科课程,根据课程之间的依赖关系,制定课程安排计划,并满足各学期课程数大致相同。按照用户输入的课程数、学期数、课程间的先后关系数目以及课程间两两间的先后关系,程序执行后会给出每学期应学的课程。功能要求(1)输入的形式和输入值的范围输入间用空格隔开。要求用户输入的课程数小于20,学期数小于或是等于8,课程名的长度小于等于10个字符。(2)程序所能达到的功能按照用户的输入,给出每学期应学的课程。(3)测试数据输入学期数5,课程数12,课程间的先后关系数16,课程的代表值V1,V2,V3,V4,V5,V6,V7,V8,V9,V10,V11,V12。课程间两两间的先后关系V1V2,V1V3,V1V4,V1V12,V2V3,V3V5,V3V7,V3V8,V4V5,V5V7,V6V8,V9V10,V9V11,V9V12,V10V12,V11V6输出第1学期应学的课程V1V9第2学期应学的课程V2V4V10V11第3学期应学的课程V3V6V12第4学期应学的课程V5V8第5学期应学的课程V713散列法的实验研究散列法中,散列函数构造方法多种多样,同时对于同一散列函数解决冲突的方法也可以不同。两者是影响查询算法性能的关键因素。对于几种典型的散列函数构造方法,做实验观察,不同的解决冲突方法对查询性能的影响。14图书借阅管理系统主要分为两大功能1)图书管理(增加图书、查询图书、删除图书、图书借阅、还书)。2)会员管理增加会员、查询会员、删除会员、借书信息。15排序方法时间性能研究问题描述对各种排序方法(直接插入排序、希尔排序、起泡排序、快速排序、直接选择排序、堆排序和归并排序)的时间性能进行比较。基本要求(1)设计并实现上述各种排序算法。(2)产生随机的初始排列,分别调用上述排序算法,并比较时间性能。待排序表的表长不小于100。至少要用5组不同的输入数据作比较;比较的指标为有关键字参加的比较次数和关键字的移动次数(关键字交换计为3次移动)。(3)统计在完全正序、完全逆序情况下的关键字比较次数和移动次数。(4)最后对结果作出简单分析,包括对各组数据得出结果波动大小的解释。16活期储蓄帐目管理活期储蓄处理中,储户开户、销户、存入、支出活动频繁,系统设计要求1)能比较迅速地找到储户的帐户,以实现存款、取款记账;2)能比较简单,迅速地实现插入和删除,以实现开户和销户的需要。17二叉排序树的实现用顺序和二叉链表作存储结构1以回车N为输入结束标志,输入数列L,生成一棵二叉排序树T;2对二叉排序树T作中序遍历,输出结果;3输入元素X,查找二叉排序树T,若存在含X的结点,则删除该结点,并作中序遍历执行操作2;否则输出信息“无X”;18最小生成树问题设计要求在N个城市之间建设网络,只需保证连通即可,求最经济的架设方法。存储结构采用多种。求解算法多种。19通讯录的制作设计目的用数据结构中的双向链表作数据结构,结合所选语言基本知识。编写一个通讯录管理系统。以把所学数据结构知识应用到实际软件开发中去。设计内容本系统应完成一下几方面的功能1输入信息ENTER2显示信息DISPLAY3查找以姓名作为关键字SEARCH4删除信息DELETE5存盘SAVE6装入LOAD设计要求1每条信息至包含姓名(NAME)街道(STREET)城市(CITY)邮编(EIP)国家(STATE)几项2作为一个完整的系统,应具有友好的界面和较强的容错能力20哈夫曼编码/译码器【问题描述】设计一个利用哈夫曼算法的编码和译码系统,重复地显示并处理以下项目,直到选择退出为止。【基本要求】1将权值数据存放在数据文件文件名为DATATXT,位于执行程序的当前目录中2分别采用动态和静态存储结构3初始化键盘输入字符集大小N、N个字符和N个权值,建立哈夫曼树;4编码利用建好的哈夫曼树生成哈夫曼编码;5输出编码;6设字符集及频度如下表字符空格ABCDEFGHIJKLM频度1866413223210321154757153220字符NOPQRSTUVWXYZ频度5763151485180238181161【进一步完成内容】1译码功能;2显示哈夫曼树;3界面设计的优化。21图书管理系统【问题描述】设计一个计算机管理系统完成图书管理基本业务。【基本要求】1每种书的登记内容包括书号、书名、著作者、现存量和库存量;2对书号建立索引表(线性表)以提高查找效率;3系统主要功能如下采编入库新购一种书,确定书号后,登记到图书帐目表中,如果表中已有,则只将库存量增加;借阅如果一种书的现存量大于0,则借出一本,登记借阅者的书证号和归还期限,改变现存量;归还注销对借阅者的登记,改变该书的现存量。【进一步完成内容】1系统功能的进一步完善;2索引表采用树表。3设计内容4程序流程图5源程序6软件测试报告(包括所用到的数据及结果)22散列表的设计与实现【问题描述】设计散列表实现电话号码查找系统。【基本要求】1设每个记录有下列数据项电话号码、用户名、地址;2从键盘输入各记录,分别以电话号码和用户名为关键字建立散列表;3采用一定的方法解决冲突;4查找并显示给定电话号码的记录;5查找并显示给定用户名的记录。【进一步完成内容】1系统功能的完善;2设计不同的散列函数,比较冲突率;3在散列函数确定的前提下,尝试各种不同类型处理冲突的方法,考察平均查找长度的变化。23顺序结构、动态链表结构下的一元多项式的加法、减法、乘法的实现。设有一元多项式AMX和BNXAMXA0A1X1A2X2A3X3AMXMBNXB0B1X1B2X2B3X3BNXN请实现求MXAMXBNX、MXAMXBNX和MXAMXBNX。要求1首先判定多项式是否稀疏2分别采用顺序和动态存储结构实现;3结果MX中无重复阶项和无零系数项;4要求输出结果的升幂和降幂两种排列情况24利用栈求表达式的值,可供小学生作业,并能给出分数。要求建立试题库文件,随机产生N个题目;题目涉及加减乘除,带括弧的混合运算;随时可以退出;保留历史分数,能回顾历史,给出与历史分数比较后的评价25简易文本编辑器要求1具有图形菜单界面;2查找,替换(等长,不等长),插入(插串,文本块的插入)、块移动(行块,列块移动),删除3可正确存盘、取盘;4正确显示总行数。26二叉树遍历算法实现二叉树的中序、前序、后序的递归、非递归遍历算法,层次序的非递归遍历算法的实现,应包含建树的实现。要求遍历的内容应是千姿百态的。树与二叉树的转换的实现。以及树的前序、后序的递归、非递归遍历算法,层次序的非递归遍历算法的实现,应包含建树的实现。要求遍历的内容应是千姿百态的。27学生搭配问题一班有M个女生,有N个男生M不等于N,现要开一个舞会男女生分别编号坐在舞池的两边的椅子上每曲开始时,依次从男生和女生中各出一人配对跳舞,本曲没成功配对者坐着等待下一曲找舞伴请设计一系统模拟动态地显示出上述过程,要求如下1输出每曲配对情况2计算出任何一个男生编号为X和任意女生编号为Y,在第K曲配对跳舞的情况至少求出K的两个值3尽量设计出多种算法及程序,可视情况适当加分提示用队列来解决比较方便28猴子吃桃子问题有一群猴子摘了一堆桃子,他们每天都吃当前桃子的一半且再多吃一个,到了第10天就只余下一个桃子。用多种方法实现求出原来这群猴子共摘了多少个桃子。要求1采用数组数据结构实现上述求解2采用链数据结构实现上述求解3采用递归实现上述求解29数制转换问题任意给定一个M进制的数X,请实现如下要求1求出此数X的10进制值(用MD表示)2实现对X向任意的一个非M进制的数的转换。3至少用两种或两种以上的方法实现上述要求(用栈解决,用数组解决,其它方法解决)。30客户消费积分管理系统问题描述针对客户的消费情况,进行客户管理,根据客户的消费积分对客户实行不同程度的打折优惠。基本要求(1)采用一定的存储结构进行客户信息的存储;(2)对客户的信息可以进行修改、删除、添加;(3)能够根据消费情况进行客户积分的计算;(4)根据积分情况实行不同程度的打折优惠;31学生成绩管理系统现有学生成绩信息文件1(1TXT),内容如下姓名学号语文数学英语张明明01677882李成友02789188张辉灿03688256王露04564577陈东明05673847学生成绩信息文件2(2TXT),内容如下姓名学号语文数学英语陈果31576882李华明32889068张明东33484256李明国34504587陈道亮35475877试编写一管理系统,要求如下1实现对两个文件数据进行合并,生成新文件3TXT2抽取出三科成绩中有补考的学生并保存在一个新文件4TXT3合并后的文件3TXT中的数据按总分降序排序至少采用两种排序方法实现4输入一个学生姓名后,能查找到此学生的信息并输出结果至少采用两种查找方法实现5要求使用结构体,链或数组等实现上述要求6采用多种方法且算法正确者,可适当加分32校园最短路径问题问题描述图的最短路径问题是指从指定的某一点V开始,求得从该地点到图中其它各地点的最短路径。并且给出求得的最短路径的长度及途径的地点。除了完成最短路径的求解外,还能对该图进行修改,如顶点以及边的增删、边上权值的修改等。校园最短路径问题中的数据元素有(1)顶点数;(2)边数;(3)边的长度。功能需求要求完成以下功能(1)输出顶点信息将校园内各位置输出。(2)输出边的信息将校园内每两个位置(若两个位置之间有直接路径)的距离输出。(3)修改修改两个位置(若两个位置之间有直接路径)的距离,并重新输出每两个位置(若两个位置之间有直接路径)的距离;(4)求最短路径输出给定两点之间的最短路径的长度及途经的地点或输出任意一点与其他各点的最短路径。(5)删除删除任意一条边。(6)插入插入任意一条边。33校园导航服务系统问题描述设计一个校园导游程序,为来访的客人提供各种信息查询服务。基本要求1设计你的学校的校园平面图,所含景点不少于10个。以图中顶点表示校内各景点,存放景点名称、代号、简介等信息;以边表示路径,存放路径长度等相关信息。2为来访客人提供图中任意景点相关信息的查询。3为来访客人提供图中任意景点的问路查询,即查询任意两个景点之间的一条最短的简单路径。34稀疏矩阵应用要求实现三元组,十字链表下的稀疏矩阵的加、转、乘的实现。(1)稀疏矩阵的存储(2)稀疏矩阵加法(3)矩阵乘法(4)矩阵转置35树的应用要求实现树与二叉树的转换的实现。以及树的前序、后序的递归、非递归算法,层次序的非递归算法的实现,应包含建树的实现。36文本文件单词的检索与计数设计要求与分析要求编程建立一个文本文件,每个单词不包含空格且不跨行,单词由字符序列构成且区分大小写;统计给定单词在文本文件中出现的总次数;检索输出某个单词出现在文本中的行号、在该行中出现的次数以及位置。该设计要求可分为三个部分实现其一,建立文本文件,文件名由用户用键盘输入;其二,给定单词的计数,输入一个不含空格的单词,统计输出该单词在文本中的出现次数;其三,检索给定单词,输入一个单词,检索并输出该单词所在的行号、该行中出现的次数以及在该行中的相应位置。(1)建立文本文件(2)给定单词的计数(3)检索单词出现在文本文件中的行号、次数及其位置(4)主控菜单程序的结构头文件包含菜单选项包含建立文件、单词定位、单词计数、退出程序选择14执行相应的操作,其他字符为非法。37任意长的整数加法问题描述设计一个程序实现两个任意长的整数的求和运算。基本要求利用双向循环链表,设计一个实现任意长的整数进行加法运算的演示程序。要求输入和输出每四位一组,组间用逗号隔开。如1,0000,0000,0000,0000。38二叉平衡排序树问题描述从一棵空树开始创建,在创建过程中,保证树的有序性,同时还要针对树的平衡性做些调整。最终要把创建好的二叉排序树转换为二叉平衡排序树。基本要求1创建(插入、调整、改组)2输出39串的查找和替换问题描述打开一篇英文文章,在该文章中找出所有给定的单词,然后对所有给定的单词替换为另外一个单词,再存盘。40约瑟夫环问题描述编号为1,2N的N个人按顺时针方向围坐一圈,每人持有一个密码(正整数)。一开始任选一个正整数作为报数的上限值M,从第一个人开始按顺时针方向自1开始顺序报数,报到M时停止报数,报M的人出列,将他的密码作为新的M值,从他的顺时针方向上的下一个开始重新从1报数,如此下去,直至所有人全部出列为止,设计一个程序求出出列顺序。基本要求1、利用单循环链表作为存储结构模拟此过程;2、键盘输入总人数、初始报数上限值M及各人密码;3、按照出列顺序输出各人的编号。41构造可以使N个城市连接的最小生成树问题描述给定一个地区的N个城市间的距离网,用PRIM算法或KRUSKAL算法建立最小生成树,并计算得到的最小生成树的代价。基本要求1、城市间的距离网采用邻接矩阵表示,邻接矩阵的存储结构定义采用课本中给出的定义,若两个城市之间不存在道路,则将相应边的权值设为自己定义的无穷大值。要求在屏幕上显示得到的最小生成树中包括了哪些城市间的道路,并显示得到的最小生成树的代价。2、表示城市间距离网的邻接矩阵(要求至少6个城市,10条边)3、最小生成树中包括的边及其权值,并显示得到的最小生成树的代价。42客户消费积分管理系统问题描述针对客户的消费情况,进行客户管理,根据客户的消费积分对客户实行不同程度的打折优惠。基本要求1采用一定的存储结构进行客户信息的存储;2对客户的信息可以进行修改、删除、添加;3能够根据消费情况进行客户积分的计算;4根据积分情况实行不同程度的打折优惠;43产品进销存管理系统问题描述针对某一种行业的库房的产品进销存情况进行管理。基本要求1采用一定的存储结构对库房的货品及其数量进行分类管理;2可以进行产品类的添加、产品的添加、产品数量的添加;3能够查询库房每种产品的总量、进货日期、销出数量、销售时间等;44特殊矩阵的压缩存储算法的实现问题描述对于特殊矩阵可以通过压缩存储减少存储空间。基本要求1针对多种特殊矩阵进行压缩存储,并能显示压缩后的相关地址和值;2输入在原来特殊矩阵中的地址,要求能从压缩后的矩阵中读出相应的值;45算术表达式的求解问题描述给定一个算术表达式,通过程序求出最后的结果。基本要求1从键盘输入要求解的算术表达式;2采用栈结构进行算术表达式的求解过程;3能够判断算术表达式正确与否;4对于错误表达式给出提示;5对于正确的表达式给出最后的结果;46电视大赛观众投票及排名系统在很多的电视大赛中,通常当选手表演结束后,现场观众通过手中的按键对参赛选手进行投票,然后对选手获得的票数进行统计,从高到低进行降序排序,从而自动产生冠军、亚军和季军。现在要求编写一程序模拟实现上述系统的功能。(注意排序数据从文件中读入)。设计提示首先输入参赛选手的人数(范围为19个),然后根据人数通过MALLOC函数来开辟存放选手信息的顺序表。将选手的编号和姓名依此存入顺序表单元中,观众通过按键进行投票,按1为1号选手投票,按2为2号选手投票,以此类推,以按0作为投票结束标志。投票结束后进行排序,在此采用希尔排序,然后为每个选手计算名次,得票相同的名次也相同。47停车场管理设停车场内只有一个可停放N辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满N辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后开入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在车场的车在它离开停车场时必须按它停留的时间长短交纳费用。基本要求试为停车场编制按上述要求进行管理的模拟程序。选作内容(1)汽车可有不同种类,则它们的占地面积不同,收费标准也不同,如1辆客车和15辆小汽车的占地面积相同,1辆十轮卡车占地面积相当于3辆小汽车的占地面积。如何处理该问题(2)汽车可以直接从便道上开走,此时排在它前面的汽车要先开走让路,然后再依次排到队尾。如何处理该问题48迷宫问题(栈)问题描述以一个MN的长方阵表示迷宫,0和1分别表示迷宫中的通路和障碍。设计一个程序,对任意设定的迷宫,求出一条从入口到出口的通路,或得出没有通路的结论。基本要求首先实现一个以链表作存储结构的栈类型,然后编写一个求解迷宫的非递归程序。求得的通路以三元组(I,J,D)的形式输出,其中(I,J)指示迷宫中的一个坐标,D表示走到下一坐标的方向,如对于下列数据的迷宫,输出的一条通路为(1,1,1),(1,2,2),3,2,3,3,1,2,。测试数据迷宫的测试数据如下左下角(1,1)为入口,右下角(8,9)为出口。实现提示计算机解迷宫通常用的是“穷举求解”方法,即从入口出发,顺着某个方向进行探索,若能走通,则继续往前进;否则沿着原路退回,换一个方向继续探索,直至出口位置,求得一条通路。假如所有可能的通路都探索到而未能到达出口,则所设的迷宫没有通路。可以二维数组存储迷宫数据,通常设定入口点的下标为(1,1),出口点的下标为(N,N)。为处理方便起见,可在迷宫的四周加一圈障碍。对于迷宫中任一位置,均可约定有东、南、西、北四个方向可通。选做内容(1)编写递归形式的算法,求得迷宫中所有可能的通路;(2)以方阵形式输出迷宫及其通路。49迷宫问题(队列)(同上)50二叉搜索树各种搜索树效率比较题目要求本题目要求对普通的二叉排序树、AVL树分别实现制定操作,并分析比较这两种不同数据结构对应的一系列插入和删除操作的效率。要求测试对N个不同整数进行下列操作的效率(1)按递增顺序插入N个整数,并按同样顺序删除;(2)按递增顺序插入N个整数,并按相反顺序删除;(3)按随机顺序插入N个整数,并按随机顺序删除;要求N从1000到10000取值,并以数据规模N为横轴,运行时间为纵轴,画出3种不同数据结构对应的操作效率比较图。51关键路径问题问题描述设计一个程序求出完成整项工程至少需要多少时间以及整项工程中的关键活动。基本要求(1)对一个描述工程的AOE网,应判断其是否能够顺利进行。(2)若该工程能顺利进行,输出完成整项工程至少需要多少时间,以及每一个关键活动所依附的两个顶点、最早发生时间、最迟发生时间。52病毒测试程序本题的任务是当整个网络被感染后,计算有多少台机器被某个特定变种所感染。输入要求输入由若干组测试数据组成。每组数据的第1行包含2个整数M和N(1M,N500),接下来是一个MN的矩阵表示网络的初始感染状态,其中的正、负整数的意义如题目描述中所定义。下面一行给出一个正整数Q,是将要查询的变种的个数。接下去的Q行里,每行给出一个变种的类型。当M或N为0时,表示全部测试结束,不要对该数据做任何处理。输出要求对每一组测试,在一行里输出被某个特定变种所感染的机器数量。53神秘国度的爱情故事输入要求输入由若干组测试数据组成。每组数据的第1行包含一正整数N(1N50000),代表神秘国度中小村的个数,每个小村即从0到N1编号。接下来有N1行输入,每行包含一条双向道路的两端小村的编号,中间用空格分开。之后一行包含一正整数M(1M500000),代表着该组测试问题的个数。接下来M行,每行给出A,B,C三个小村的编号,中间用空格分开。当N为0时,表示全部测试结束,不要对该数据做任何处理。输出要求对每一组测试给定的A,B,C,在一行里输出答案,即如果C在A和B之间的路径上,输出YES,否则输出NO。54并查集检查网络题目要求给定一个计算机网络以及机器间的双向连线列表,每一条连线允许两端的计算机进行直接的文件传输,其他计算机间若存在一条连通路径,也可以进行间接的文件传输。请写出程序判断任意指定两台计算机,它们之间是否可以进行文件传输输入要求输入若干测试数据组成。对于每一组测试,第1行包含一个整数N(10000),即网络中计算机的总台数,因而每台计算机可用1到N之间的一个正整数表示。接下来的几行输入格式为IC1C2或者C或者CC1C2或者S,其中C1和C2是两台计算机的序号,I表示在C1和C2间输入一条连线,C表示检查C1和C2间是否可以传输文件,S表示该组测试结束。当N为0时,表示全部测试结束,不要对该数据做任何处理。输出要求对每一组C开头的测试,检查C1和C2间是否可以传输文件,若可以,则在一行中输出“YES”,否则输出“NO”。当读到S时,检查整个网络。若网络中任意两机器间都可以传输文件,则在一行中输出“THENETWORKISCONNECTED”,否则输出“THEREAREKCOMPONENTS”,其中K是网络中连通集的个数。两组测试数据之间请输出一空行分隔。55多窗口管理问题图形用户界面(GUI)维护屏幕上的多个窗口。这些窗口按层次组织,最前面的窗口作为活动窗口。有些应用程序维护一个当前打开窗口表。从菜单中可以访问此表。用户可以选择一个窗口标题以使成为最前面的或活动的窗口。当一个底层窗口的视线被挡时,这就显得特别有用。从菜单的表中选择“WINDOW_1”可以激活该窗口。试为窗口编制按上述要求进行管理的模拟程序。56网络流宇宙旅行题目要求在走遍了地球上的所有景点以后,旅游狂人开始计划他的宇宙旅行项目。经过谨慎调查,他目前掌握了一张各卫星空间站可以临时容纳的旅客人数列表。但旅客从一个星球飞往另一个星球时,需要在若干卫星空间站临时停靠中转,而这些空间站不能接待任何旅客驻留,旅客必须立刻转乘另一艘飞船离开,所以空间站不能接待超过自己最大容量的旅客流。为了估计预算,现在旅游狂人需要知道终点星球的接待站应该设计多大容量,才能使得每艘飞船在到达时都可以保证让全部旅客下船。输入要求输入若干组测试数据组成。每组测试数据的第1行包含旅行的起点星球和终点星球的名称和一个不超过500的正整数N(N为0标志全部测试结束,不要对该数据做任何处理)。接下来的N行里,数据格式为SOURCEICAPACITYI,其中SOURCEI和DESTINATIONI是卫星空间站的名称或起点、终点星球的名称,正整数CAPACITYI是飞船从SOURCEI到DESTINATIONI一次能运载的最大旅客流量。每个名称是由AZ之间三个大写字母组成的字符串,例如ZJU。测试数据中不包含任何到达起点星球的信息以及任何从终点星球出发的信息。输出要求对每一组测试,在一行里输出终点星球接待站应具有的最小容量,使得每艘飞船在到达时都可以保证让全部旅客下船。57转发器网络评到使用量问题当无线电台在一个非常大的区域上传播信号时,为了每个接收器都能得到较强信号,使用转发器转发信号。然而,需要仔细选择每个转发器使用的频道,一是附近的转发器不彼此干扰。如果临近的转发器使用不同的频道,条件就得到满足。因为无线电波的频谱是宝贵的资源,转发器所需频道的数量应减到最少。编程任务读取转发器网络的描述信息,并计算出所需频道的最少使用量。输入格式输入包含许多转发器网络图。每幅图的第一行是转发器数目(126)。转发器用连续的大写字母表示,从A开始。例如,10个转发器名称分别是A,B,C,I和J。当转发器的个数是0时,表示输入结束。转发器数目之后,是其邻近关系的列表。每行的格式为ABCDH表示转发器B、C、D和H与转发器A邻近。第一行描述与转发器A邻近的,第二行描述与B邻近的,直到描述完所有的转发器。如果某个转发器不与其他转发器相邻,它的形式为A转发器依字母顺序列出。注意相邻是对称关系,如果A与B相邻,则B与A也相邻。因为转发器位于水平面内,由相邻的转发器构成的网络图没有相交的线。输出格式对于每幅图(除了最后一个没有转发器),输出一行,是转发器不互相干扰所需的最少频道数。输出格式参考样例输出。注意频道数为1的话,“CHANNEL”为单数。输入样例2AB4ABCBACDCABDDBC4ABCDBACDCABDDABC0输出样例1CHANNELNEEDED3CHANNELSNEEDED4CHANNELSNEEDED58遗传基因数据处理问题计算分子生物学(CMB)正在研究遗传基因的数据处理。对于两种链之间的金花关系,如果他们相差不大,我们就说他们有亲缘关系。我们可以用树形像地描述这种关系。组现在上面,他们的后裔依次排列。这样的树叫做进化树。种系遗传学的一个任务就是从给出的生物链里推断出进化树。我们将问题简化一些,给出一个树形结构和树的N片叶子,他是一颗完全二叉树(N总是2的指数)。每片叶子都是含氨基酸的一个序列(如下面所示的单字符编码),所有序列的长度相等(L表示长度)。你的任务是找出拥有共
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 飒美小升初课件
- 2025年中医药临床应用评估考核答案及解析
- 外包方安全管理培训内容课件
- 2025年康复医学病例分析能力检测模拟考试卷答案及解析
- 内科各章节考试题及答案
- 2025年临床病理诊断题库及答案
- 2025年急救医学心肺复苏技能考核测试卷答案及解析
- 高性能石墨块生产线项目投资计划书
- 外出安全培训感触与收获
- 2025年屠宰工厂质检员考试试题及答案
- 医院卫生院安全生产领导责任清单
- 导尿术导尿术课件
- 燃气轮机控制系统
- 规划用地性质调整论证报告
- 法考客观题历年真题及答案解析卷二(第3套)
- YS/T 261-2011锂辉石精矿
- 公路水运项目危大工程专项方案技术培训课件
- 五大连池市财政资金支出审批管理办法
- 货币与金融统计学课件
- 《资本论》解读课件
- 新款h2夜视移动电源
评论
0/150
提交评论